【问题标题】:Smart ASCII string representation智能 ASCII 字符串表示
【发布时间】:2010-11-13 15:53:04
【问题描述】:

我有一个将二进制文件转换为 ASCII 文件的应用程序。使用探查器,我发现我花了 25% 的时间来处理从 BinaryWriter.Write(wchar[]) 调用的 Encoding.GetBytes()。这是完全正确的,因为我有很多类似于这个的结构:

m_writer.Write("some fancy long text".ToCharArray());

你知道如何避免这种编码转换吗?

我现在的一个想法是做类似的事情:

const byte[] SOME_FANCY_LONG_TEXT = Encoding.ASCII.GetBytes("some fancy ...");
// ... and later
m_writer.Write(SOME_FANCY_LONG_TEXT);

但我必须手动完成很多这样的条目。

【问题讨论】:

  • 您能否更具体地了解“将二进制文件转换为 ASCII 文件”?你到底应用了什么转换?
  • 二进制文件转换成ASCII文件有什么区别? (这是什么意思)

标签: c# string optimization encoding ascii


【解决方案1】:

如果您正在创建一个文本文件,您为什么要使用BinaryWriter?只需使用TextWriterBinaryWriter 适用于您希望以简单方式编写原语、字符串等的二进制流。

(顺便说一句,您的所有文本肯定都会是 ASCII 吗?您可能要考虑使用 UTF-8。)

【讨论】:

  • 问题不再相关 :) 感谢您的意见 - 帮助很大。
猜你喜欢
  • 2010-09-11
  • 1970-01-01
  • 1970-01-01
  • 2013-05-18
  • 2018-07-07
  • 1970-01-01
  • 2020-12-31
  • 2021-11-06
  • 1970-01-01
相关资源
最近更新 更多