2015-09-18 6 views
-1

hiiii, Я хочу читать mp3-файл с помощью двоичного считывателя, мой код является:Ошибка C# при чтении mp3-файла с помощью бинарного считывателя: процесс не может получить доступ к файлу 'URL testbinary.mp3', потому что он используется другим процессом

using (BinaryReader br = new BinaryReader(File.Open("Songs/testbinary.mp3", FileMode.Open))) 
     { 
      int length = (int)br.BaseStream.Length; 

      byte[] bytes = br.ReadBytes(length); 

      txtBinary.Text = bytes.ToString(); 
     } 

....... когда я исполняю этот код он показывает и исключение:

процесс не может получить доступ к файлу «URL \ testbinary.mp3», потому что это является используемый другим процессом.

где «URL» - это мое фактическое местоположение файла.

+1

Исключение говорит вам, что именно. –

+0

Не нужно открывать тот же файл дважды. (Кстати: используйте 'File.ReadAllBytes' просто) – Eser

+0

спасибо ... его моя глупая ошибка ... – Deepak

ответ

0

Вы открываете тот же файл дважды (без возможности совместного доступа). Чтобы прочитать содержимое файла в байтах вы можете использовать File.ReadAllBytes

byte[] bytes = File.ReadAllBytes("Songs/testbinary.mp3"); 

КСТАТИ: Не забудьте txtBinary.Text = bytes.ToString(); не дает вам то, что вы думаете. Вам нужно будет использовать BitConverter.ToString или Convert.ToBase64String

+0

благодарю вас за правильную работу ... вы можете помочь мне преобразовать этот двоичный текст в mp3 ... или просто я хочу воспроизвести его путем полировки – Deepak

+0

@Deepak 'Convert.FromBase64String' – EZI

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

  • Нет связанных вопросов^_^