|
|
1
11
有什么理由不使用
如果你需要先看:
如果这确实是一个ASCII字符串(即所有字节都小于128),那么代码页问题不应该是一个问题,除非 尤其 奇怪的默认代码页,它不是基于ASCII的。 出于兴趣,您是否确实对应用程序进行了概要分析,以确保这是真正的瓶颈?是否确实需要绝对最快的转换,而不是更可读的转换(例如,使用encoding.getString进行适当的编码)? |
|
|
2
9
OneLiner(假设缓冲区实际包含一个格式良好的以空结尾的字符串):
|
|
|
3
7
|
|
|
4
2
|
|
5
1
要考虑的一种可能性是:检查默认代码页是否可以接受,并在运行时使用该信息选择转换机制。 这也可以考虑字符串是否实际上是以空结尾的,但是一旦您这样做了,当然,速度会增加,我的消失。 |
|
|
6
1
我不确定速度,但我发现在编码之前最容易使用LINQ删除空值:
|
|
7
0
使用.NET类System.Text.Encoding将byte[]对象转换为包含其等价ASCII的字符串的简单/安全/快速方法,反之亦然。类具有返回ASCII编码器的静态函数: 从字符串到字节[]:
从字节[]到字符串:
|
|
|
8
-1
这有点难看,但您不必使用不安全的代码:
|
|
|
A B · C#Excel自动调整列避免长文本时出错 8 月前 |
|
|
Megrez7 · C#ToArray转换合并为一行,导致数组元素更改 8 月前 |
|
Aycon · 在工厂方法中释放部分创建的对象的正确方法是什么? 8 月前 |
|
|
Sei · Avalonia/WPF将路由器传递到控制模板 8 月前 |