当 Stream.Read() 存在时,StreamReader 的用途是什么?

2024-03-07

这一直困扰着我。我知道Stream是一个抽象类,因此无法实例化,但它具有派生自它的类。为什么有一个流阅读器类和一个流.Read()方法(反之亦然)流写入器 and 流.Write())?您可以使用 300 万种不同的方法写入文本文件,但尝试了解所有这些不同的类型和方法是相当令人沮丧的。系统IO命名空间。我找到了有关编写器和读取器对象或派生流对象本身之间差异的问题和答案,但没有找到有关此特定情况的信息。


TextReader (which StreamReader派生自)与字符串一起使用。Stream使用字节。文本和字节之间的转换是通过Encoding.

根据文件内容是文本还是二进制选择正确的类。

重要的是要了解文本和字节之间的区别 http://www.joelonsoftware.com/articles/Unicode.html.

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

当 Stream.Read() 存在时,StreamReader 的用途是什么? 的相关文章

  • Tensorflow 中的自定义资源

    由于某些原因 我需要为 Tensorflow 实现自定义资源 我试图从查找表实现中获得灵感 如果我理解得好的话 我需要实现3个TF操作 创建我的资源 资源的初始化 例如 在查找表的情况下填充哈希表 执行查找 查找 查询步骤 为了促进实施 我
  • 捕获 foreach 条件中抛出的异常

    我有一个foreach在 foreach 本身的条件下循环期间中断的循环 有没有办法try catch抛出异常然后继续循环的项 这将运行几次 直到异常发生然后结束 try foreach b in bees exception is in
  • Blazor 与 Razor

    随着 Blazor 的发明 我想知道这两种语言之间是否存在显着的效率 无论是在代码创建方面还是在代码的实际编译 执行方面 https github com SteveSanderson Blazor https github com Ste
  • 通信对象 System.ServiceModel.Channels.ServiceChannel 不能用于通信

    通信对象System ServiceModel Channels ServiceChannel 无法用于通信 因为它处于故障状态 这个错误到底是什么意思 我该如何解决它 您收到此错误是因为您让服务器端发生 NET 异常 并且您没有捕获并处理
  • 在 Xcode4 中使用 Boost

    有人设置 C Xcode4 项目来使用 Boost 吗 对于一个简单的 C 控制台应用程序 我需要在 Xcode 中设置哪些设置 Thanks 用这个来管理它 和这个
  • 串行 I/O 与 Windows/Windows CE 重叠/不重叠

    抱歉 这不是一个大问题 但更多的是帮助那些在这些特定问题上遇到问题的人 我正在解决的问题需要使用串行 I O 但主要在 Windows CE 6 0 下运行 然而 最近有人问我该应用程序是否也可以在 Windows 下运行 所以我开始着手解
  • 为什么 BOOST_FOREACH 不完全等同于手工编码的?

    From 增强文档 http www boost org doc libs 1 48 0 doc html foreach html foreach introduction what is literal boost foreach li
  • 在 C# 中将位从 ulong 复制到 long

    所以看来 NET 性能计数器类型 http msdn microsoft com en us library system diagnostics performancecounter aspx有一个恼人的问题 它暴露了long对于计数器
  • 转到 C# WPF 中的第一页

    我正在 WPF 中使用导航服务 为了导航到页面 我使用 this NavigationService Navigate new MyPage 为了返回我使用 this NavigationService GoBack 但是如何在不使用的情况
  • Xamarin Android:获取内存中的所有进程

    有没有办法读取所有进程 而不仅仅是正在运行的进程 如果我对 Android 的理解正确的话 一次只有一个进程在运行 其他所有进程都被冻结 后台进程被忽略 您可以使用以下代码片段获取当前正在运行的所有 Android 应用程序进程 Activ
  • 单元测试失败,异常代码为 c0000005

    我正在尝试使用本机单元测试项目在 Visual Studios 2012 中创建单元测试 这是我的测试 TEST METHOD CalculationsRoundTests int result Calculations Round 1 0
  • std::bind 重载解析

    下面的代码工作正常 include
  • C# using 语句、SQL 和 SqlConnection

    使用 using 语句 C SQL 可以吗 private static void CreateCommand string queryString string connectionString using SqlConnection c
  • 在 C 中复制两个相邻字节的最快方法是什么?

    好吧 让我们从最明显的解决方案开始 memcpy Ptr const char a b 2 调用库函数的开销相当大 编译器有时不会优化它 我不会依赖编译器优化 但即使 GCC 很聪明 如果我将程序移植到带有垃圾编译器的更奇特的平台上 我也不
  • 同时从多个流中捕获、最佳方法以及如何减少 CPU 使用率

    我目前正在编写一个应用程序 该应用程序将捕获大量 RTSP 流 在我的例子中为 12 个 并将其显示在 QT 小部件上 当我超过大约 6 7 个流时 问题就会出现 CPU 使用率激增并且出现明显的卡顿 我认为它不是 QT 绘制函数的原因是因
  • 如何查明CONFIG_FANOTIFY_ACCESS_PERMISSIONS是否启用?

    我想利用fanotify 7 http man7 org linux man pages man7 fanotify 7 html我遇到的问题是在某些内核上CONFIG FANOTIFY ACCESS PERMISSIONS不起作用 虽然C
  • 为什么 Ajax.BeginForm 在 Chrome 中不起作用?

    我正在使用 c NET MVC2 并尝试创建一个 ajax 表单来调用删除数据库记录 RemoveRelation 的方法 删除记录的过程正在按预期进行 删除记录后 表单应调用一个 JavaScript 函数 从视觉效果中删除该记录 Rem
  • 热重载时调用方法

    我正在使用 Visual Studio 2022 和 C 制作游戏 我想知道当您热重新加载应用程序 当它正在运行时 时是否可以触发一些代码 我基本上有 2 个名为 UnloadLevel 和 LoadLevel 的方法 我想在热重载时执行它
  • Swagger 为 ASP.CORE 3 中的字典生成错误的 URL

    当从查询字符串中提取的模型将字典作为其属性之一时 Swagger 会生成不正确的 URL 如何告诉 Swagger 更改 URL 中字典的格式或手动定义输入参数模式而不自动生成 尝试使用 Swashbuckle 和 NSwag 控制器 pu
  • WPF/数据集:如何通过 XAML 将相关表中的数据绑定到数据网格列中?

    我正在使用 WPF DataSet 连接到 SQL Server Express XAML 和 C Visual Studio 2013 Express 我从名为 BankNoteBook 的现有 SQL Server Express 数据

随机推荐

  • 有条件地调用 React hook

    从react官方文档我们知道 React 依赖于 Hook 的调用顺序 https reactjs org docs hooks rules html explanation 那么 如果我想有条件地调用它 那么为钩子 保留 一个位置有什么问
  • jQuery 对话框第二次未打开

    I found 这个线程 https stackoverflow com questions 366696 jquery dialog box这基本上和我有同样的问题 但他们的解决方案对我不起作用 我第一次单击提交按钮时会出现该对话框 但第
  • 如何让子菜单浮动在div上?

    大家好 我有一个带有下拉菜单的子菜单 但是当菜单下降时 它会将下面的 div 向下推 知道如何修复它以便它加载到 div 上吗 还有一个是水平的 一个是垂直的 如何解决这个问题 谢谢 JSFiddle http jsfiddle net p
  • 将 .obj 转换为 .h 时无法使用“已定义(@array)”警告

    我正在尝试将我的 obj 文件转换为 h 头文件 但我收到 Can t use define array 也许您应该忽略 Defined 警告 并且没有 h 文件已创建 我尝试过更换 center to center或省略defined 但
  • 如何摧毁Fancybox?

    我正试图摧毁Fancybox http fancyapps com fancybox 我还没有找到任何方法来做到这一点文档 http fancyapps com fancybox docs 初始化后如何销毁呢 这不起作用 a unbind
  • 即使PODS不受升级影响,“helm升级”是否会重新启动PODS?

    我的舵图有大约 12 个 PODS 当我这样做的时候helm upgrade更改某些值后 除一个 POD 外 所有 POD 都会重新启动 我的问题是 Will helm upgrade即使 PODS 不受升级影响 也要重新启动吗 换句话说
  • mLab 上的 MongoDB 身份验证失败

    按照此处的步骤创建了一个新的 mLab 帐户并创建了一个数据库http docs mlab com create sub http docs mlab com create sub 尝试使用 mongo shell 和 mongoose N
  • 在WPF中,当由于空引用而绑定失败时,是否使用FallbackValue?

    我的视图模型公开了一个名为的列表MyList可能为空或null 我有一个想要根据这种状态隐藏的元素 如果MyList为空或null 那么该元素应该折叠 如果它有元素 那么应该显示它 这是我的DataTrigger
  • 如何console.log Moment.js版本?

    有没有办法查出是什么版本Moment js正在被使用 Moment js http momentjs com 只需使用moment version 文档页面中似乎没有提到这个属性 但是查看库很容易得到它github上的代码 https gi
  • ASP.NET 中的BackgroundWorker 线程

    是否可以使用 BackGroundWorker 线程ASP NET http en wikipedia org wiki ASP NET2 0适合以下场景 让浏览器端的用户不用等待很长时间 Scenario 浏览器请求一个页面 例如 Sen
  • GitPython 列出受某个提交影响的所有文件

    我正在使用这个 for 循环来循环所有提交 repo Repo C Users shiro Desktop lucene solr for commit in list repo iter commits print commit file
  • Android:使用第三方应用程序打开私人文件

    我正在制作一个从互联网下载文件并允许用户使用第三方应用程序打开这些文件的应用程序 我使用以下命令将这些文件存储在我的私人应用程序目录中getFilesDir http developer android com reference andr
  • 使用Python3.x创建贝叶斯网络并学习参数[关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我正在为 Windows 上的 python3 x 寻找最合适的工具来创建贝叶斯网络 从数据中学习其参
  • 在 Python 中解析 CSS

    我正在合并 100 个 HTML 页面 所有页面的头部都嵌入了样式元素 使用 BeautifulSoup 提取 style 的内容 但现在只剩下将字符串解析为字典 selector str properties str 的任务 查看tiny
  • 如何自动下载每周导出服务文件

    在 SalesForce 中 您可以在此处安排最多每周一次的数据 备份 转储 设置 gt 管理设置 gt 数据管理 gt 数据导出 如果您有一个大型 Salesforce 数据库 则可能需要手动下载大量文件 有没有人有最佳实践 工具 批处理
  • CorePlot iPhone 错误:CorePlot-CocoaTouch.h:没有这样的文件或目录

    我正在尝试引导某人将 CorePlot 添加到他们的 iPhone 应用程序中 我的电脑上可以运行 但他总是收到 CorePlot CocoaTouch h no such file or directory 错误 如果我弄乱了构建设置中的
  • 在 Swift 中从 sockaddr_in 结构体获取 IP 地址和端口号?

    经过多次尝试和错误 但没有取得任何成功 看来我可能需要一些帮助 在最新版本的 Swift 中 如何从 sockaddr in 获取 IP 地址和端口号 我看到了一些相关的问题 但似乎无法在任何地方找到合适的例子 另外 我似乎并没有真正掌握如
  • Chartjs 在鼠标悬停时非常快速地调整大小(闪烁)

    我在基于引导的页面中有一个图表 我试图在页面调整大小时调整它的大小 以遵循响应式设计的变化 所以我有这段代码 function redrawChart var w chart container width var c document g
  • 使用 ctypes 从 Python 调用带有 Char** 参数的 C 方法

    我需要一种使用 ctypes 库将数组从 Python 传递到 char 的方法到 C 库 我尝试过的一些方法导致我出现分段错误 另一些则导致垃圾信息 由于我已经在这个问题上苦苦挣扎了一段时间 我决定写一个小指南 以便其他人可以受益 有这段
  • 当 Stream.Read() 存在时,StreamReader 的用途是什么?

    这一直困扰着我 我知道Stream是一个抽象类 因此无法实例化 但它具有派生自它的类 为什么有一个流阅读器类和一个流 Read 方法 反之亦然 流写入器 and 流 Write 您可以使用 300 万种不同的方法写入文本文件 但尝试了解所有