把文件读取出来每出现一次0x31,0x32,0x33输出到命令行新的一行开始
时间: 2024-10-24 13:17:26 浏览: 13
激光测距程序.zip_GY-530_LCD5110_VL53L0X_stm32_测距2350
5星 · 资源好评率100%
在C#中,如果你想读取文件并每当遇到`0x31`、`0x32`或`0x33`时换行显示,可以使用`FileStream`配合`StreamReader`和循环遍历来检查每个字符。这里是一个示例:
```csharp
using System;
using System.IO;
class Program
{
static void Main()
{
try
{
string filePath = "input.txt"; // 文件路径
string outputLine = ""; // 当前行的内容
// 打开文件进行读取
using (FileStream fileStream = File.OpenText(filePath))
{
char currentChar;
while ((currentChar = fileStream.ReadChar()) != -1) // 阅读直到文件结束
{
if (currentChar == '1' || currentChar == '2' || currentChar == '3') // 匹配0x31, 0x32, 0x33对应的ASCII值
{
// 如果当前字符不是0x31, 0x32, 0x33,那么输出到命令行
if (outputLine != "")
{
Console.WriteLine(outputLine);
outputLine = ""; // 清空当前行
}
Console.Write(currentChar); // 输出匹配的字符
}
else
{
outputLine += currentChar; // 非匹配字符添加到当前行
}
}
// 最后一行不需要额外的换行
if (outputLine != "")
Console.WriteLine(outputLine);
}
}
catch (Exception ex)
{
Console.WriteLine($"发生错误:{ex.Message}");
}
}
}
```
这段代码会读取指定的文件,每次读取一个字符,如果遇到`0x31`、`0x32`或`0x33`,则打印到控制台并在下一行继续读取,直到文件结束。
阅读全文