2016-03-28 7 views
0

Я доступ к API, доставки и получения информации этикетки обратно в формате byte[].Конвертирование байт [] в формате ZPL

Если я сохраню это как файл, открытие файла откроет красивые данные, которые мне нужны.

Я копил этот файл, как это:

string LabelPath = "c:\\temp\\"; 
string LabelFileName = LabelPath + "trackingnumber" + ".zpl"; 

FileStream LabelFile = new FileStream(LabelFileName, FileMode.Create); 
LabelFile.Write(Label.Parts[0].Image, 0, Label.Parts[0].Image.Length); 
LabelFile.Close(); 

Я хочу, чтобы иметь возможность делать то, что преобразование это сохранение файлов делает для того чтобы иметь возможность передавать информацию в виде чистых данных. Данные о файле делает что-то вроде этого:

^FO28,962^A0N,27,32^FWN^FH^FD## MASTER ## ^FS 
^FO136,874^A0N,27,36^FWN^FH^FD1 of 2^FS 
^FO32,253^AdN,0,0^FWN^FH^FDLouisville KY 40218^FS 

Это то, что я пытался и она успешно преобразовать в строку, но это ничего не выглядит, как мне нужно это. Это просто длинная строка, которую наш принтер Zebra не знает, как обращаться.

LabelStream = Convert.ToBase64String(Label.Parts[0].Image)

Как я могу сделать такое же преобразование, что LabelFile.Write делает без фактического сохранения файла?

ответ

1

Похоже, что ваши данные не являются базовыми64, но простой текст? Может быть, вы можете попробовать это?

LabelStream = Encoding.Default.GetString(Label.Parts[0].Image) 
+0

На самом деле это было «Encoding.ASCII.GetString», но это было в значительной степени! Благодаря! – Aarmora