Читать весь файл в байтовом массиве в WINFORMS - PullRequest
0 голосов
/ 21 октября 2011

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

        Stream myStream;
        OpenFileDialog saveFileDialog1 = new OpenFileDialog();

        saveFileDialog1.Filter = "zip files (*.zip)|*.zip|All files (*.*)|*.*";
        saveFileDialog1.FilterIndex = 2;
        saveFileDialog1.RestoreDirectory = true;

        if (saveFileDialog1.ShowDialog() == DialogResult.OK)
        {
            if ((myStream = saveFileDialog1.OpenFile()) != null)
            {

                NSITESERVICE.UploadSoapClient obj = new NSITESERVICE.UploadSoapClient();

                byte[] filebytes =  //what should i pass it over here...

                obj.UploadFile("kamal", "p@ssword", filebytes);

                // Code to write the stream goes here.
                myStream.Close();
            }
        }

Я не знаю, где я не прав

Любая помощь приветствуется. Thnaks

Ответы [ 2 ]

4 голосов
/ 21 октября 2011

Вы ничего не присваиваете переменной filebytes, поэтому вы фактически передаете ноль службе. Используйте метод File.ReadAllBytes для чтения всех байтов и передачи их веб-службе.

3 голосов
/ 21 октября 2011

Вы на самом деле не читаете байты из myStream.

byte[] fileBytes = new byte[myStream.Length];
myStream.Read(fileBytes,0,mystream.Length);

obj.UploadFile(...)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...