C#找不到文件(从串口读取)

问题描述 投票:0回答:1

我试图打开一个名为条形码的文件,但是我得到的错误是文件找不到?

我用这一行来读取文件:

string[] DxfFile = System.IO.File.ReadAllLines(textBoxBarCodeScanner.Text);

如果我分配文本框,它工作正常并正确打开文件:

textBoxBarCodeScanner.Text = (@"PLANKA.DXF");

我使用这些行从串口读取:

RecievedData = RecievedData.Replace("\r\n", "").Replace("\r", "").Replace("\n", "");
textBoxBarCodeScanner.Text = (@RecievedData);

我不得不首先删除/ r但它没有帮助。我是一个初学者,所以我不太擅长为你找到合适的调试信息,所以这里是我得到的,请告诉我在哪里找到了更多有用的信息。如果我在执行中打破并查看“本地人”我有一行说文字,那里我得到了“PLANKA.DFX”似乎是正确的。

调试错误消息如下:

附加信息:找不到文件E:\ Win7 \ Google Drive \ Visual Studio 2013 Projects \ Husmaskin GUI \ Husmaskin GUI \ bin \ Debug \ PLANKA.DFX。

这有效(@“PLANKA.DXF”):

这不(@RecievedData)??

c# textbox file.readalllines
1个回答
0
投票

在屏幕截图中,文件扩展名有两个不同的值:DXFDFX

传入文本周围可能有额外的空格,因此我建议您在代码中添加.Trim()

我还建议您检查代码中的文件并创建一个对您更有用的错误消息:

var filename = txtFoo.Text;
if (!File.Exists(filename))
     throw new Exception($"Could not find file '{filename}'");
© www.soinside.com 2019 - 2024. All rights reserved.