XNA框架导入程序

问题描述 投票:4回答:3

我正在使用XNA框架开发游戏。我的游戏有几个级别,我将数据存储在一个普通的旧文本文件中。在VS 2008中,当我将级别文件添加到项目并编译时,我收到以下错误消息。

错误1无法自动检测要用于“Levels \ 0.txt”的导入程序。没有导入器可以处理此文件类型。指定在项目中处理此文件类型的导入程序。 F:\ Projects \ BrickBreaker \ BrickBreaker \ Content \ Levels \ 0.txt打砖块

我之所以提出这个问题,是因为如果我改变了我的关卡并运行游戏,那么关卡就不会更新了。我发现级别没有更新,因为VS从bin \ debug文件夹运行游戏,并且由于级别文件不包含在项目中,因此在更改时不会复制它们。我还发现框架附带的平台示例包括项目中的级别数据,这是我从中获得技术的地方。

那么,我应该使用不同的文件格式还是仅仅处理必须手动复制新的级别文件?

解决方案 - 在深入研究这篇文章的答案后,我找到了解决方案。我将文本文件添加到项目中,并将build属性设置为none。编译时不再出现该错误,并且该文件包含在项目中。

visual-studio frameworks xna
3个回答
8
投票

如果要输出目录,可以让Visual Studio只复制文件。在项目中文本文件的属性下,选择“构建操作:无”,并根据需要将副本更改为输出目录。

您还可以查看平台模型样本。他们使用文本文件作为其级别格式。


2
投票

文本文件没有内容导入程序。忽略内容管道,只需像读取任何其他普通文本文件一样读取文件。

string line = string.empty;
using(StreamReader sr = new StreamReader("filename")){
    while((line = sr.ReadLine()) != null){
        //reads line by line until eof
        //do whatever you want with the text
    }
}

0
投票

我有类似的问题,并发现将文件添加到内容项目更容易,并将构建操作设置为none,而不是完全跳过内容管道。

© www.soinside.com 2019 - 2024. All rights reserved.