您好我正在将音频文件读入字节数组。然后我想从该字节数组中读取每4个字节的数据并将其写入另一个文件。
我能够做到这一点,但是,我的问题是我想在每4字节数据写入文件后添加新行。怎么做?? 这是我的代码......
FileStream f = new FileStream(@"c:\temp\MyTest.acc");
for (i = 0; i < f.Length; i += 4)
{
byte[] b = new byte[4];
int bytesRead = f.Read(b, 0, b.Length);
if (bytesRead < 4)
{
byte[] b2 = new byte[bytesRead];
Array.Copy(b, b2, bytesRead);
arrays.Add(b2);
}
else if (bytesRead > 0)
arrays.Add(b);
fs.Write(b, 0, b.Length);
}
请提出任何建议。
答案 0 :(得分:14)
我认为这可能是你问题的答案:
byte[] newline = Encoding.ASCII.GetBytes(Environment.NewLine);
fs.Write(newline, 0, newline.Length);
所以你的代码应该是这样的东西:
FileStream f = new FileStream("G:\\text.txt",FileMode.Open);
for (int i = 0; i < f.Length; i += 4)
{
byte[] b = new byte[4];
int bytesRead = f.Read(b, 0, b.Length);
if (bytesRead < 4)
{
byte[] b2 = new byte[bytesRead];
Array.Copy(b, b2, bytesRead);
arrays.Add(b2);
}
else if (bytesRead > 0)
arrays.Add(b);
fs.Write(b, 0, b.Length);
byte[] newline = Encoding.ASCII.GetBytes(Environment.NewLine);
fs.Write(newline, 0, newline.Length);
}
答案 1 :(得分:2)
将System.Environment.NewLine
传递给文件流
了解更多信息http://msdn.microsoft.com/en-us/library/system.environment.newline.aspx