2015-12-19 3 views
0

У меня есть файл, который я пытаюсь прочитать и распечатать в текстовом поле. Файл не имеет расширения, но он является файлом данных на веб-сайте (www.checkfiletype.com).Чтение файла .dat

Вот скриншот того, как файл выглядит в онлайн-читателе, он выглядит как hex? enter image description here

Я пробовал считыватель потока и ничего не давал в результатах. Последний метод, который я пытался, был BinaryReader, который я никогда раньше не использовал. Результатом этого является «0» в текстовое поле. Учитывая, что я никогда не использовал функцию BinaryReader, я уверен, что я сделал с ней что-то не так.

Using reader As New BinaryReader(File.Open("C:\Users\jefhill\Desktop\CMOSDATA", FileMode.Open)) 
     Dim pos As Integer = 0 
     Dim length As Integer = reader.BaseStream.Length 
     While pos < length 
      ' Read the integer. 
      Dim value As Integer = reader.ReadInt32() 
      ' Write to screen. 
      TextBox1.Text = value 
      ' Add length of integer in bytes to position. 
      pos += 4 
     End While 
    End Using 

Любая помощь была бы принята с благодарностью.

EDIT Я попытался использовать базовый StreamReader. При этом ничего не происходит, как без ошибок, просто не помещает (пустое) в текстовое поле.

Dim file As String = "C:\Users\jefhill\Desktop\CMOSDATA" 
    Dim reader As New System.IO.StreamReader(file) 
    TextBox1.Text = reader.ReadToEnd 
    reader.Close() 
+1

Вы пробовали с DataFileReader :) Я шучу. То, что вы показываете в снимке, - это то, что вы можете получить, читая его как текст (например, с помощью StreamReader). Если файл зашифрован каким-либо образом (например, файл Excel, PDF, исполняемый файл, изображение и т. Д.), Вам нужно будет узнать шифрование, чтобы определить лучший способ его прочитать. Расширение .data ничего не говорит (кроме, возможно, вы не должны пытаться прочитать этот файл, потому что он скорее всего предназначен для внутренних целей определенного приложения и, похоже, не является тем, что вы ищете). – varocarbas

+0

@varocarbas Спасибо за ответ, я просто попытался использовать несколько верификаций StreamReader, оба дали одинаковые результаты, ничего. Когда я ничего не говорю, я имею в виду никаких ошибок, просто ничего не помещаю в текстовое поле. Обновлен топ-пост с последним кодом, который я пробовал. – dwb

+1

Как сказано, все зависит от используемого шифрования; даже текст, который вы видите, зашифрован (например, для отображения на западных символах). Я рекомендую вам не тратить время на все это: либо вы точно знаете формат данного файла, либо можете тратить много времени, чтобы ничего не получить. – varocarbas

ответ

0

Файл не является текстовым файлом и не может быть непосредственно отображен в текстовом поле. Вам нужно будет найти формат файла и преобразовать его в текст, чтобы отобразить его в TextBox.

Смежные вопросы