为了账号安全,请及时绑定邮箱和手机立即绑定

无法将字符串转换为 system.io

无法将字符串转换为 system.io

C#
Qyouu 2022-12-24 14:57:52
我试图让我的文件流读取用户选择的任何文本文件。文件路径将在他们选择后出现在文本框中。我想使用这个文件路径,以便我的 streamreader 知道要读取什么文件。"流 fileStream = FilePath.Text;" 不管用。public void ValidateButton_Click(object sender, EventArgs e)        {            {                List<string> temp = new List<string>();                string[] finalArray;                Stream fileStream = FilePath.Text;                using (StreamReader reader = new StreamReader(fileStream))                {                    // We read the file then we split it.                    string lines = reader.ReadToEnd();                    string[] splittedArray = lines.Split(',');                    // We will check here if any of the strings is empty (or just whitespace).                    foreach (string currentString in splittedArray)                    {                        if (currentString.Trim() != "")                        {                            // If the string is not empty then we add to our temporary list.                            temp.Add(currentString);                        }                    }                    // We have our splitted strings in temp List.                    // If you need an array instead of List, you can use ToArray().                    finalArray = temp.ToArray(); }}我得到错误无法将字符串转换为 system.io。如何让流阅读器从“文件路径”文本框中读取所选文件
查看完整描述

2 回答

?
子衿沉夜

TA贡献1828条经验 获得超3个赞

FilePath.Text返回一个字符串,它是驱动器上文件的位置


下面的代码可以工作


using (StreamReader reader = new StreamReader(FilePath.Text))

{

    // We read the file then we split it.

    string lines = reader.ReadToEnd();

    string[] splittedArray = lines.Split(',');


    // We will check here if any of the strings is empty (or just whitespace).

    foreach (string currentString in splittedArray)

    {

        if (currentString.Trim() != "")

        {

            // If the string is not empty then we add to our temporary list.

            temp.Add(currentString);

        }

    }


    // We have our splitted strings in temp List.

    // If you need an array instead of List, you can use ToArray().

    finalArray = temp.ToArray();

}


查看完整回答
反对 回复 2022-12-24
?
料青山看我应如是

TA贡献1772条经验 获得超8个赞

使用接受路径的构造函数的重载StreamReader

using (StreamReader reader = new StreamReader(FilePath.Text))


查看完整回答
反对 回复 2022-12-24
  • 2 回答
  • 0 关注
  • 149 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信