在经历了多次令人沮丧的经历之后,我决定再次使用Windows开发人员预览构建Windows Metro风格的应用程序。
所以我启动了Visual Studio和BAM!正如我尝试输入此代码
System.Console.WriteLine("");
它给了我“控制台”下的红色波浪形。
所以我尝试了别的东西:
string text = System.IO.File.ReadAllText(@"C:\Users\Public\TestFolder\WriteText.txt");
那也失败了!文件下的红色波浪形。
为什么会出现此错误?所有这些代码应该工作正常!或者我犯了一个基本错误?
答案 0 :(得分:10)
因为Metro applications use a subset of the .Net Framework API。在此版本中,System.Console
和System.IO.File
不存在。
从MSDN,“将System.IO.File.ReadAllText
方法替换为使用异步I / O成员的方法;例如:”
public static async Task<string> ReadAllText(StorageFile file)
{
IInputStream inputStream = await file.OpenForReadAsync();
using (Stream stream = inputStream.AsStream())
using (StreamReader reader = new StreamReader(stream))
{
return await Task.Run(() => reader.ReadToEnd());
}
}
答案 1 :(得分:0)
Windows 8 Metro Apps没有控制台(因为图形环境中的控制台没有意义),但您可以使用第三方库(如Console Class for Metro Apps <)获得控制台的某些功能/ p>