Пользовательский перевод строки в двоичном потоке с использованием Hex Array в WPF - PullRequest
0 голосов
/ 20 сентября 2018

У меня есть бинарный файл, который я читаю и печатаю в текстовое поле во время переноса в заданную точку, но он переносится в тех местах, где его не должно быть.Я хочу игнорировать все символы перевода строки, кроме тех, которые я определил.

Нет ни одного байта Newline, скорее, это будет серия из них.Я думаю, что нашел ряд значений Hex 00-01-01-0B, которые, кажется, соответствуют тому, где должны быть переводы строк.

Как игнорировать существующие разрывы строк и использовать вместо этого то, что я хочу?

Вот где я нахожусь:

shortFile = new FileStream(@"tempfile.dat", FileMode.Open, FileAccess.Read);
DisplayArea.Text = "";                
byte[] block = new byte[1000];
shortFile.Position = 0;
while (shortFile.Read(block, 0, 1000) > 0)
{
    string trimmedText =  System.Text.Encoding.Default.GetString(block);
    DisplayArea.Text += trimmedText + "\n";
}

1 Ответ

0 голосов
/ 21 сентября 2018

Я только что понял это за пару минут до того, как написал dlatikay, но очень ценил, что у него тоже была правильная идея.Я просто заменил все управляющие символы пробелами.

for (int i = 0; i < block.Length; i++)
{
    if (block[i] < 32)
    {
        block[i] = 0x20;
    }
}
...