我正在尝试使用ubuntu 14.10上的monodevelop获取所选文件夹中的文件列表。 当我执行FileChoserButton事件时,我的应用程序在第二行没有任何消息时崩溃(var files = ...)
我来自Windows窗体世界,几乎没有使用单声道或Linux应用程序开发的经验。有人可以帮助我如何诊断这里发生的事情以及如何解决它? 提前致谢
protected void ChangeFolder (object sender, EventArgs e)
{
var dirInfo = new System.IO.DirectoryInfo (filechooserbutton1.Uri.ToString ());
var files = dirInfo.GetFiles ();
// do something with files variable
}
filechooserbutton1.Uri.ToString ()
的值是“file:/// home / username / music”(我选择的文件夹)...
答案 0 :(得分:1)
GetFiles只能抛出一个异常:DirectoryNotFoundException 所以,您的路径由' filechooserbutton1.Uri.ToString()'定义。无效。
在第二行用断点检查它的值并尝试使用"硬编码"你确定它存在的路径。
修改强>
请记住Linux中的路径需要" /"作为分隔符。
修改强>
"文件:///..."不是一条有效的道路。
修改强>
要捕获异常,请使用着名的" try {} catch(Exception ex){//在此处显示消息}
答案 1 :(得分:1)
使用(filechooserbutton1.FullName.ToString ())
代替Uri.ToString()