我正在创建一个包含1000多个.txt文件的Windows rt应用程序,我从中获取其内容。
这些文本文件是我项目的一部分,但我无法用代码阅读它们。
这是我的代码
static async Task ReadFile(string filePath, List<string> list)
{
try
{
StorageFile file = await StorageFile.GetFileFromApplicationUriAsync(new Uri("ms-appx:///" + filePath));
var readThis = await FileIO.ReadLinesAsync(file);
foreach (var line in readThis)
{
list.Add(line);
}
}
catch (FileNotFoundException)
{
}
}
其中filePath是:“txt / data / 14b.txt。
执行代码时列表中包含数据,但应用程序崩溃,我在app.g.i.cs这行发送
if (global::System.Diagnostics.Debugger.IsAttached) global::System.Diagnostics.Debugger.Break();
任何想法?
答案 0 :(得分:2)
尝试将文本文件标记为内容构建操作。然后
var file = await StorageFile.GetFileFromApplicationUriAsync( new Uri( "ms-appx:///" + filePath ) );
应加载文件。
答案 1 :(得分:1)
var storageFile = await StorageFile.GetFileFromApplicationUriAsync(new Uri(String.Format("ms-appx:///{Project name}/txt/data/{0}", fileName)));
答案 2 :(得分:0)
尝试替换
StorageFile file = await StorageFile.GetFileFromApplicationUriAsync(new Uri("ms-appx:///" + filePath));
到
var ProjectFolder = Windows.ApplicationModel.Package.Current.InstalledLocation;
StorageFile file = await ProjectFolder.GetFileAsync(fileName);