小编Yos*_*eck的帖子

C# - 带矩阵的文本文件 - 划分所有条目

我有一个带有1122 x 1122降水测量矩阵的文本文件.每个测量用4个十进制数字表示.示例行看起来像这样:

0.0234 0.0023 0.0123 0.3223 0.1234 0.0032 0.1236 0.0000 ....

(这1122个值长,1122个线下降.

我需要相同的文本文件,但所有值除以6.(我必须这样做920个文件......)

我设法做到了这一点,但毫无疑问是残忍无效和内存穷举的方式:

  1. 我逐个打开文本文件,逐行读取每个文本文件
  2. 我将每一行拆分为一个字符串数组,其中单独的值作为成员
  3. 我遍历数组,将每个值转换为double,除以6并将结果转换回字符串,格式化为4位十进制数字并作为成员存储在新的字符串数组中.
  4. 我把阵列加入了一条线
  5. 我将此行写入新的文本文件.
  6. 瞧(大约一个小时后......)我有920个新的文本文件.

我相信有一个更快更专业的方法来做到这一点.我查看了有关Matrix.Divide的无尽网站,但没有看到(或理解)针对此问题的解决方案.任何帮助将不胜感激!这是用于每个文件的代码段:



    foreach (string inputline in inputfile)
    {
        int count = 0;
        string[] str_precip = inputline.Split(' ');  // holds string measurements
        string[] str_divided_precip = new string[str_precip.Length]; // will hold string measurements divided by divider (6)
        foreach (string measurements in str_precip)
        {
            str_divided_precip[count] = ((Convert.ToDouble(measurements)) / 6).ToString("F4", CultureInfo.CreateSpecificCulture("en-US"));
            count++;
        }
        string divline = string.Join(" ", str_divided_precip);
        using …
Run Code Online (Sandbox Code Playgroud)

c# arrays matrix

8
推荐指数
1
解决办法
179
查看次数

标签 统计

arrays ×1

c# ×1

matrix ×1