我正在通过binaryReader读取文件到一个字节数组,但我想这个数组是7位而不是8我可以使用什么(utf7encoding)? 谢谢。从字节转换为7位字节
0
A
回答
1
我要猜你是想通过一些运输这限制了AB可用位来推一个二进制文件yte只是第一个7.
如果肢体猜测是正确的,那么base64编码可能适合账单。例如假定该文件不是巨大的: -
var content = File.ReadAllBytes("c:\yourpath");
var base64Content = Convert.ToBase64String(content);
var base64Array = System.Text.Encoding.ASCII.GetBytes(base64Content);
如果该文件是大,那么这种方法可以很容易被转换为基于流的方法,以使文件的块进行编码。
当然,为了这个工作,传输的另一端也需要能够解码Base64。
1
如果要读取使用utf7字符集编码的文件,请勿使用BinaryReader。
尝试这样的方法(假设你的输入是一个行分隔文本文件):
StreamReader reader = new StreamReader(@"InputFile.txt", System.Text.Encoding.UTF7);
string sLine;
while((sLine = reader.ReadLine()) != null)
{
// Process the line
}
1
只是读取整个文件如常(与BinaryReader在),然后和所有与127的值(从而剥夺了最高位)
像这样:
value &= 127; // Strip highest bit (effectively making it a 7 bit value)
+2
这应该没问题,那种数据丢失在应用程序中是可以接受的。 IOW,那些最高位如果设置不需要并且可以被丢弃。 – AnthonyWJones 2009-09-29 10:48:30
相关问题
- 1. 如何从8位字节转换为7位字节(基地256基地128)
- 2. 无法从字节[]转换为字节
- 3. 将字节转换为位
- 4. 位/字节转换
- 5. 从BigInteger转换为八位字节?
- 6. 从字节[]转换为串
- 7. 如何将字节[]转换为字节[]
- 8. 字符串转换为字节转换
- 9. 如何将位转换为字节?
- 10. 将字节转换为位集
- 11. 将RGB8字节[]转换为位图
- 12. 如何将字节转换为位?
- 13. 将字节转换为位图图像
- 14. 将字节转换为python中的位
- 15. 将位图转换为字节数组
- 16. 将字节转换为GB,位于php
- 17. 如何将字节数据转换为位并再次转换回字节?
- 18. 将字节转换为字节到字节
- 19. 将字符串[]转换为字节[] 2个字符转换为字节?
- 20. 从int转换成字节
- 21. 无法转换从字节
- 22. 将字节[]转换为int
- 23. 转换字节[]为简短[]
- 24. 将IRandomAccessStreamWithContentType转换为字节[]
- 25. 将字节[]转换为SAFEARRAY
- 26. 将字节[]转换为Int8
- 27. 将FloatBuffer []转换为字节[]
- 28. 将字节转换为SByte
- 29. 将字节[]转换为PDF
- 30. char转换为字节? (JAVA)
你需要一个由7位字节组成的数组吗? – rahul 2009-09-29 10:10:17
如果输入字节是129,输出应该是什么? – 2009-09-29 10:15:24
要了解正确答案应该是什么,如果告诉我们为什么需要7位编码会有所帮助? – AnthonyWJones 2009-09-29 10:39:54