это код, о котором идет речь:
using (var file = MemoryMappedFile.OpenExisting("AIDA64_SensorValues"))
{
using (var readerz = file.CreateViewAccessor(0, 0))
{
var bytes = new byte[567];
var encoding = Encoding.ASCII;
readerz.ReadArray<byte>(0, bytes, 0, bytes.Length);
File.WriteAllText("C:\\myFile.txt", encoding.GetString(bytes));
var readerSettings = new XmlReaderSettings { ConformanceLevel = ConformanceLevel.Fragment };
using (var reader = XmlReader.Create("C:\\myFile.txt", readerSettings))
{
Вот как выглядит myfile.txt:
<sys><id>SCPUCLK</id><label>CPU Clock</label><value>1598</value></sys><sys><id>SCPUFSB</id><label>CPU FSB</label><value>266</value></sys><sys><id>SMEMSPEED</id><label>Memory Speed</label><value>DDR2-667</value></sys><sys><id>SFREEMEM</id><label>Free Memory</label><value>415</value></sys><sys><id>SGPU1CLK</id><label>GPU Clock</label><value>562</value></sys><sys><id>SFREELVMEM</id><label>Free Local Video Memory</label><value>229</value></sys><temp><id>TCPU</id><label>CPU</label><value>42</value></temp><temp><id>TGPU1</id><label>GPU</label><value>58</value></temp>
, если я записываю данные в текстовый файл на жестком дискес помощью:
File.WriteAllText("C:\\myFile.txt", encoding.GetString(bytes));
затем прочитайте тот же текстовый файл с фрагментом XmlReader:
XmlReader.Create("C:\\myFile.txt");
, он читает его очень хорошо, программа запускается и завершается так, как и должно, но тогда, еслиЯ напрямую читаю с фрагментом XmlReader, например:
XmlReader.Create(encoding.GetString(bytes));
Я получаю исключение при запуске "недопустимых символов в пути" в строке XmlReader.Create
.
Я пытался записать его в отдельную строкусначала и прочитав это с помощью xmlreader, и это не поможет попытаться распечатать его в CMD, чтобы увидеть, как он выглядит, потому что CMD не будет отображать недопустимые символы, с которыми я имею дело, правильно?1021 * и он точно соответствует текстовому файлу.
, поэтому как-то записать его в текстовый файл удаляет некоторые "недопустимые символы"?что вы, ребята, думаете?