You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

C#读取文本文件内容存入数组,现有代码报错如何解决?

错误原因

  • 你当前代码仅调用了一次ReadLine(),只读取了文件第一行内容,完全没有读取第二行的数组数值,和你描述的「第一行存长度、第二行存数值」的文件格式不匹配
  • 流资源没有做安全释放,遇到运行异常时会出现资源泄漏问题
  • 逻辑错误地假设数组长度和所有数值都在同一行,会触发数组索引越界异常

正确实现代码

public static void Main()
{
    // 使用using自动释放读写流资源,不需要手动调用Close
    using StreamReader plik_wejsciowy = new StreamReader("In0201.txt");
    using StreamWriter plik_wyjsciowy = new StreamWriter("Out0201.txt");
    
    // 读第一行获取数组长度
    int n = int.Parse(plik_wejsciowy.ReadLine().Trim());
    int[] tab = new int[n];
    
    // 读第二行拆分获取所有数值
    string[] wartosci = plik_wejsciowy.ReadLine().Split(' ', StringSplitOptions.RemoveEmptyEntries);
    
    // 存入数组
    for (int i = 0; i < n; i++)
    {
        tab[i] = int.Parse(wartosci[i]);
    }
    
    // 后续可在这里添加数组的业务处理逻辑,再写入输出文件即可
}

内容的提问来源于stack exchange,提问作者Robert Pietraszewski

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 22:45:08