2015-04-23 3 views
-1

У меня есть .dat-файл, который содержит некоторые значения. Теперь, когда я пытаюсь прочитать эти значения, я получаю некоторые нечитаемые значения, такие как ��#����+e��I��. Я использую следующий код для чтения файла. .Чтение .dat файла как строки в C#

System.IO.StreamReader oRead = null; 
string[] FirstLine = new string[500]; 
int lineNo = 0; 
oRead = System.IO.File.OpenText(@"F:\\Bills\\TAXAZGSC.DAT"); 
lineNo = 0; 
while (!oRead.EndOfStream) 
{ 
    FirstLine[lineNo] = oRead.ReadLine(); 
    lineNo += 1; 
} 
for (int i = 0; i <= (lineNo - 1); i++) 
{ 
    Console.WriteLine(FirstLine[i].ToString()); 

} 

Пожалуйста, помогите мне исправить it.Thanks ..

+4

Это звучит, как если бы они '.DAT' файлы, то они либо: ** НЕ ** правильно закодированные строки, или они являются сырыми двоичные данные, что более вероятно. –

+0

Сообщите нам больше о файле .dat. Вы его создали? Если да, то как? Если вы не знаете, как читать данные? – jurgemaister

+0

@EBrown Файл находится в формате 'binary'. Извините, я получил этот файл с аппаратной машины. В настоящее время я меняю формат файла' .DAT' на '.zip' и после распаковки файла я могу чтобы прочитать файл как текст. Это я делаю вручную. Я хочу сделать это программно, используя C#. Как это сделать? –

ответ

0

«ДАТ», как правило, используется в качестве общего расширения для двоичных данных в пользовательских двоичных форматов (другие подобные расширения являются «БИН» и «RAW»). Невозможно просмотреть такие двоичные данные как строку напрямую, поскольку данные обычно содержат необработанное двоичное представление различных типов, таких как числа, коллекции и иногда строки.

Что вы можете сделать:

  • находки для чтения/анализатор для конкретного двоичного формата. Некоторые из них уже существуют в инфраструктуре .Net (например, ZIP-архивы или сериализованные данные .Net), некоторые из них имеют существующие библиотеки.
  • спецификации найти и прочитать файл самостоятельно, возможно, с использованием BinaryReader класса
  • находки конвертера формат для более читаемого/текста
  • сканирования для последовательностей, которые выглядят как строки и отображение только тех, кто (то есть, если вы просто хотело показать строки ресурсов из DLL-файл)
  • показать файл в виде строки с последовательностью HEX значений
Смежные вопросы