【问题标题】:Cannot print array elements in loop, error cannot convert from 'string' to 'string[]'无法在循环中打印数组元素,错误无法从“字符串”转换为“字符串 []”
【发布时间】:2017-09-25 21:33:34
【问题描述】:

我正在尝试将数组中的每一行字符串打印到一个单独的文本文件中,但我的数据源中似乎没有带索引的数组,我一直在使用 WriteAllLines() 方法进入我的数据源,错误:

错误 CS1503 参数 2:无法从 'string' 转换为 'string[]'

因为有T_tag[l]

谁能帮我理解这个错误?

string[] Colmn_No = ColmnN.ToArray();

int ArrayLength = Colmn_No.Length;    

string[] Cleantag = new string[ArrayLength];
string[] CleanCage = new string[ArrayLength];
for (int i = 0; i <= ArrayLength - 1; i++)
{
    Cleantag[i] = Colmn_SmpNm[i].Trim().ToUpper();   
    CleanCage[i] = Colmn_Cage[i].Trim().ToUpper();  
}


string[] T_tag = new string[ArrayLength];
string[] A_tag = new string[ArrayLength];
for (int k = 0, l=0, m=0; k <= ArrayLength - 1; k++)
{
    if (Cleantag[k].StartsWith("T"))    
    {  
        T_tag[l] = "<T>"+ Cleantag[k]+"</T><C>C</C><V>"+ CleanCage[k]+"</V>";

        System.IO.File.WriteAllLines((RRfolder + "//" + Cleantag[k] + ".txt"), T_tag[l]);
        l++;
    }

【问题讨论】:

  • T_tag 对我来说是一个长度为 0 的数组吗?也许你想要长度为 1?
  • 您的T_tag 可以容纳0 个元素。您的 Cleantag 未定义。多花点力气问一个问题。
  • 我想我没有很好地记录,
  • 我已经更新了我用来正确显示的代码。
  • T-tag 是一个长度为 ArrayLength 的数组

标签: c# arrays string printing elements


【解决方案1】:
//System.IO.File.WriteAllLines((RRfolder + "//" + Cleantag[k] + ".txt"), T_tag[l]);

1) 写 1 行

System.IO.File.WriteAllText((RRfolder + "//" + Cleantag[k] + ".txt"), T_tag[l]);

2) 或者,写所有行(在 for 循环之外执行)

System.IO.File.WriteAllLines((RRfolder + "//" + Cleantag[k] + ".txt"), T_tag);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-02-06
    • 1970-01-01
    • 2011-10-17
    • 1970-01-01
    • 1970-01-01
    • 2021-10-03
    • 1970-01-01
    相关资源
    最近更新 更多