Visual Studio 2012 - C#:从资源中读取“.txt”文件

2023-11-26

我正在尝试从 Visual Studio 中的资源访问并读取文本文件“achInfo.txt”。该网站上已经列出了一些解决方法,但似乎没有一个对我有用。他们只是给了我两个错误之一,我稍后会解释。

这是到目前为止的整个方法。

private string[] GetAchMetadata(short element)
{
    string[] temp = { "", "" };
    string cLine;
    try
    {
        StreamReader sr = new StreamReader(Properties.Resources.achInfo);
        while (!sr.EndOfStream)
        {
            cLine = sr.ReadLine();
            if (Microsoft.VisualBasic.Information.IsNumeric(cLine))
            {
                if (int.Parse(cLine) == element)
                {
                    temp[0] = cLine;
                    temp[1] = sr.ReadLine();
                    return temp;
                }
            }
        }

    }
    catch (Exception e)
    {
        System.Diagnostics.Debug.WriteLine("There was a problem in collecting data.");
        System.Diagnostics.Debug.Write(e);
    }

    return temp;
}

我的第一个假设是使用Properties.Resources.achInfo,因为这直接引用有问题的文件。然而,这引发了System.ArgumentException错误,描述为“路径中存在非法字符”。

然后我使用了程序集解决方案(“Grandma_Lair”是我的命名空间,不要问。”):

Assembly asm;
asm = Assembly.GetExecutingAssembly();
StreamReader sr = new StreamReader(asm.GetManifestResourceStream("Grandma_Lair.achInfo.txt"));

但是,这引发了System.ArgumentNullException并显示消息“值不能为空”。 我还将资源的访问修饰符设置为公共,并且确保该文件设置为嵌入式资源。

有人对我的问题有任何想法吗?


更换后,您的第一个解决方案应该可以工作StreamReader with StringReader:

StringReader sr = new StringReader(Properties.Resources.achInfo);

价值Properties.Resources.achInfo表示您以字符串形式完整嵌入的资源,而不是该资源的路径(因此出现“路径中的无效字符”错误)。

The GetManifestResourceStream方法也应该有效,但是您需要为该方法提供正确的路径,该路径除其他外还基于项目的默认命名空间的名称。如果您添加一个呼叫assembly.GetManifestResourceNames()在尝试获取资源并在调试器中查找资源名称的确切拼写之前,您还应该能够修复空指针异常问题。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Visual Studio 2012 - C#:从资源中读取“.txt”文件 的相关文章

  • 我如何才能等待多个事情

    我正在使用 C 11 和 stl 线程编写一个线程安全队列 WaitAndPop 方法当前如下所示 我希望能够将一些内容传递给 WaitAndPop 来指示调用线程是否已被要求停止 如果 WaitAndPop 等待并返回队列的元素 则应返回
  • 为什么 C# Array.BinarySearch 这么快?

    我已经实施了一个很简单用于在整数数组中查找整数的 C 中的 binarySearch 实现 二分查找 static int binarySearch int arr int i int low 0 high arr Length 1 mid
  • Web 客户端和 Expect100Continue

    使用 WebClient C NET 时设置 Expect100Continue 的最佳方法是什么 我有下面的代码 我仍然在标题中看到 100 continue 愚蠢的 apache 仍然抱怨 505 错误 string url http
  • 动态加载程序集的应用程序配置

    我正在尝试将模块动态加载到我的应用程序中 但我想为每个模块指定单独的 app config 文件 假设我的主应用程序有以下 app config 设置
  • 不支持将数据直接绑定到存储查询(DbSet、DbQuery、DbSqlQuery)

    正在编码视觉工作室2012并使用实体模型作为我的数据层 但是 当页面尝试加载时 上面提到的标题 我使用 Linq 语句的下拉控件往往会引发未处理的异常 下面是我的代码 using AdventureWorksEntities dw new
  • 查找c中结构元素的偏移量

    struct a struct b int i float j x struct c int k float l y z 谁能解释一下如何找到偏移量int k这样我们就可以找到地址int i Use offsetof 找到从开始处的偏移量z
  • 为什么当实例化新的游戏对象时,它没有向它们添加标签? [复制]

    这个问题在这里已经有答案了 using System Collections using System Collections Generic using UnityEngine public class Test MonoBehaviou
  • 类模板参数推导 - clang 和 gcc 不同

    下面的代码使用 gcc 编译 但不使用 clang 编译 https godbolt org z ttqGuL template
  • HTTPWebResponse 响应字符串被截断

    应用程序正在与 REST 服务通信 Fiddler 显示作为 Apps 响应传入的完整良好 XML 响应 该应用程序位于法属波利尼西亚 在新西兰也有一个相同的副本 因此主要嫌疑人似乎在编码 但我们已经检查过 但空手而归 查看流读取器的输出字
  • 将 VSIX 功能添加到 C# 类库

    我有一个现有的单文件生成器 位于 C 类库中 如何将 VSIX 项目级功能添加到此项目 最终目标是编译我的类库项目并获得 VSIX 我实际上是在回答我自己的问题 这与Visual Studio 2017 中的单文件生成器更改 https s
  • 带动态元素的 WPF 启动屏幕。如何?

    我是 WPF 新手 我需要一些帮助 我有一个加载缓慢的 WPF 应用程序 因此我显示启动屏幕作为权宜之计 但是 我希望能够在每次运行时更改屏幕 并在文本区域中显示不同的引言 这是一个生产力应用程序 所以我将使用非愚蠢但激励性的引言 当然 如
  • 如何设计以 char* 指针作为类成员变量的类?

    首先我想介绍一下我的情况 我写了一些类 将 char 指针作为私有类成员 而且这个项目有 GUI 所以当单击按钮时 某些函数可能会执行多次 这些类是设计的单班在项目中 但是其中的某些函数可以执行多次 然后我发现我的项目存在内存泄漏 所以我想
  • while 循环中的 scanf

    在这段代码中 scanf只工作一次 我究竟做错了什么 include
  • SolrNet连接说明

    为什么 SolrNet 连接的容器保持静态 这是一个非常大的错误 因为当我们在应用程序中向应用程序发送异步请求时 SolrNet 会表现异常 在 SolrNet 中如何避免这个问题 class P static void M string
  • 如何在整个 ASP .NET MVC 应用程序中需要授权

    我创建的应用程序中 除了启用登录的操作之外的每个操作都应该超出未登录用户的限制 我应该添加 Authorize 每个班级标题前的注释 像这儿 namespace WebApplication2 Controllers Authorize p
  • 如何在Xamarin中删除ViewTreeObserver?

    假设我需要获取并设置视图的高度 在 Android 中 众所周知 只有在绘制视图之后才能获取视图高度 如果您使用 Java 有很多答案 最著名的方法之一如下 取自这个答案 https stackoverflow com a 24035591
  • 混合 ExecutionContext.SuppressFlow 和任务时 AsyncLocal.Value 出现意外值

    在应用程序中 由于 AsyncLocal 的错误 意外值 我遇到了奇怪的行为 尽管我抑制了执行上下文的流程 但 AsyncLocal Value 属性有时不会在新生成的任务的执行范围内重置 下面我创建了一个最小的可重现示例来演示该问题 pr
  • 测试用例执行完成后,无论是否通过,如何将测试用例结果保存在变量中?

    我正在使用 NUNIT 在 Visual Studio 中使用 Selenium WebDriver 测试用例的代码是 我想在执行测试用例后立即在变量中记录测试用例通过或失败的情况 我怎样才能实现这一点 NUnit 假设您使用 NUnit
  • C# - OutOfMemoryException 在 JSON 文件上保存列表

    我正在尝试保存压力图的流数据 基本上我有一个压力矩阵定义为 double pressureMatrix new double e Data GetLength 0 e Data GetLength 1 基本上 我得到了其中之一pressur
  • Windows 和 Linux 上的线程

    我在互联网上看到过在 Windows 上使用 C 制作多线程应用程序的教程 以及在 Linux 上执行相同操作的其他教程 但不能同时用于两者 是否存在即使在 Linux 或 Windows 上编译也能工作的函数 您需要使用一个包含两者的实现

随机推荐

  • 如何将操作字符串传递到 JSF 2 复合组件中?

    我正在 JSF 2 中创建一个简单的菜单复合组件 但是 我无法将 String 属性传递到复合组件中以在 的操作属性中使用 我的组件看起来像
  • WCAG 2.0 A 级和 AJAX 生成的内容

    我很难找到明确的答案 如果网站以某种方式使用 AJAX 它是否可以至少通过 WCAG 2 0 A 级 For WCAG 2 0 示例 states 我可以使用 Javascript Ajax Flash PDF Silverlight 和其
  • 非有限差分值,很多数据经过指数化后变成inf和NA

    我将找到排序逻辑模型的参数 但误差总是表明存在非有限的有限差分值 如果我改变 b0 cjll lt function b U lt X b lSU lt csm exp U lSU lt lSU 0 lSU lSU 0 LL lt sum
  • ANDROID FirebaseDatabase:无法保存对象

    我无法将对象添加到 firebase 实时数据库 我尝试了以下代码 但是当这段代码执行时 db child Users setValue person 我的应用程序崩溃了 public class Person String fname S
  • 关于Java字符串池的问题[重复]

    这个问题在这里已经有答案了 考虑这段代码 String first abc String second new String abc 当使用new关键字 Java 将创建abc String又对吗 它会存储在常规堆上还是String水池 多
  • TextBox.Text += "字符串";与 TextBox.AppendText(“字符串”);

    这两种方法有什么区别 其中一个比另一个更有效率吗 我在想也许 AppendText 使用类似于 StringBuilder 的方法 即它使用自己的缓存而不是每次创建和附加新字符串 是真的吗 Thanks 正如中明确提到的MSDN 文档的备注
  • 预期的 EventLogQuery 时间格式?

    我正在尝试使用 EventLogQuery 类来查询事件日志 我按照上所示的示例进行操作http msdn microsoft com en us library bb671200 28v vs 90 29 aspx Y0 我在 Googl
  • 从 Web Api 控制器返回 http 状态代码

    我正在尝试返回未针对 Web api 控制器中的 GET 方法进行修改的状态代码 304 我成功的唯一方法是这样的 public class TryController ApiController public User GetUser i
  • C++ 奇怪的构造函数行为

    谁能向我解释一下两者之间的区别复合体a and 复数 b include
  • 将 IAM 角色与 PHP SDK 结合使用时出现问题

    我正在使用此脚本来填充 DynamoDB https docs aws amazon com amazondynamodb latest developerguide LoadDataPHP html 我使用 AWS 开发工具包时收到此错误
  • C# P/Invoke结构问题

    我正在尝试为 C API 本机 Win dll 编写 C P Invoke 包装器 通常工作正常 唯一的例外是 C 代码中采用结构体作为参数的特定方法 该函数被调用时没有任何异常 但它返回 false 表明执行过程中出现了失败 API头文件
  • 在 Angular 指令中嵌入将元素放入单个“范围”内

    这是我的指令 myapp directive envtable function return restrict E replace true transclude true template table class table table
  • NodeJS HTTP - 侦听 80 以外的其他端口

    我在 Windows 上运行 XAMPP 以在端口 80 上托管 Apache 服务器 现在我尝试在后台运行 NodeJS 脚本 但问题是它只能侦听端口 80 如果确实如此 一切都会正常运行应该 但我不能同时运行 Apache 因为 Apa
  • Ada 中的派生类型和子类型

    有什么区别 首先 术语 它是 Ada 不是 ADA 它是以 Ada Lovelace 命名的 它不是一个缩写词 子类型与其基类型兼容 因此您可以将基类型的操作数与基类型的操作数混合 例如 subtype Week Days is Integ
  • 如何使用 facebook API 获取公共墙帖子

    我正在尝试从 Facebook 个人资料中获取墙贴 我对粉丝页面没有任何问题 并且我的用户令牌有效 至少对于粉丝页面 这篇文章的例子 https www facebook com aurelia filion posts 101513423
  • 如何以编程方式更改初始选项卡栏选择

    更改应用程序上的初始选项卡栏选择时出现问题 即在应用程序启动时选择中间选项卡而不是最左边的选项卡 该应用程序使用故事板 并且后来在开发过程中通过故事板方法添加了选项卡栏控制器 tabBarController selectedIndex 1
  • QtSQL + Sqlite 并支持 .size() 函数?

    我想知道 QtSql Sqlite 是否支持 QSqlQuery size 函数 不 事实并非如此 但是 您可以同时使用 last 和 at 来获取结果 QSqlQuery q q exec select from table q last
  • Python 请求多部分 HTTP POST

    我想知道如何使用 Python 请求翻译这样的内容 在 urllib2 中 您可以手动操作通过网络发送到 API 服务的数据 但 Requests 声称分段文件上传很容易 但是 当尝试使用 Requests 库发送相同的请求时 我认为它没有
  • ImportError:没有名为“matplotlib”的模块——使用 Anaconda tensorflow 环境

    我只是想学习 Tensorflow 但对 Python 完全陌生 所以我使用 Anaconda 我创建了一个conda环境 conda create n tensorflow python 3 5 当然我激活了我的 conda 环境 sou
  • Visual Studio 2012 - C#:从资源中读取“.txt”文件

    我正在尝试从 Visual Studio 中的资源访问并读取文本文件 achInfo txt 该网站上已经列出了一些解决方法 但似乎没有一个对我有用 他们只是给了我两个错误之一 我稍后会解释 这是到目前为止的整个方法 private str