• 大小: 3KB
    文件类型: .cs
    金币: 1
    下载: 0 次
    发布日期: 2021-06-04
  • 语言: C#
  • 标签: C#  DEM  

资源简介

利用C#语言读取DEN数据的ASCII码文件,并进行坡度的求取

资源截图

代码片段和文件信息

using System;
using System.IO;
using System.Collections.Generic;
using System.Linq;
using System.Text;


namespace slope
{
    class Program
    {
        static void Main(string[] args)
        {
            //读取DEM转换后得到的ASCII码文本,将高程值保存在二维数组中
            //StreamReader[] str = new StreamReader(@“G:\C#\dem.txt“);
            string[] str = File.ReadAllLines(@“G:\C#\dem.txt“ Encoding.Default);
            int ncols nrows;
            int i j k;
            double xllcorner yllcorner cellsize NODATA_value; 
      
            ncols = Convert.ToInt32(str[0].Substring(143));
            nrows = Convert.ToInt32(str[1].Substring(14 3));
            xllcorner = Convert.ToDouble(str[2].Substring(14 6));
            yllcorner = Convert.ToDouble(str[3].Substring(14 7));
            cellsize = Convert.ToDouble(str[4].Substring(14 2));
            NODATA_value = Convert.ToDouble(str[5].Substring(14 5));
            Console.WriteLine(“ncols:{0}“ ncols);
            Console.WriteLine(“nrows:{0}“ nrows);
            Console.WriteLine(“xllcorner:{0}“ xllcorner);
            Console.WriteLine(“yllcorner:{0}“ yllcorner);
            Console.WriteLine(“cellsize:{0}“ cellsize);
            Console.WriteLine(“NODATA_value:{0}“ NODATA_value);

            double[] dem = new double[nrows ncols];
            string [] str1 = new string[ncols];
            char[] interval = new char[] { ‘ ‘ };
            for (i = 6k=0; i < nrows ; i++k++)
            {
                str1 = str[i].Split(interval);

       

评论

共有 条评论