0

我正在尝试打开一个与条形码名称相同的文件,但我收到无法找到该文件的错误?

我使用这一行来读取文件:

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)? 不工作的文本框

4

1 回答 1

0

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

传入文本周围可能有额外的空格,所以我建议也添加.Trim()到您的代码中。

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

var filename = txtFoo.Text;
if (!File.Exists(filename))
     throw new Exception($"Could not find file '{filename}'");
于 2017-12-16T16:35:05.200 回答