Тип Mediumblob, как получить из БД - PullRequest
0 голосов
/ 24 сентября 2019

У меня есть база данных mysql, которая содержит таблицу со следующим свойством: Имя -> Isp, тип данных -> mediumblob.Я предполагаю, что это какой-то байтовый массив.Я протестировал оператор select sql следующим образом:

SELECT Isp FROM radon ORDER BY id LIMIT 2;

и получил следующий список:

'SF8IC\0\0DeviceERegion=400 4000 DeviceName=Gamma spectrometer NaI N542 DeviceNick=Gamma542 DeviceType=ScGammaSp FonFile=$(DevicePath)\\title.spc GeomMap={Compton=64x64m.tbl CpnUnit=Bq/kg ERegion=400 4000 Eff=0.1 0.7 ImmMethod=Average ImmWnds=300 400 580 630 720 800 1030 1400 1580 1860 2250 2400 2800 Rsn=-13 3 SysErr_40K=0.15 SysErr_def=0.1} KevPerCh=.865843086259212 LTime=1800.002651 NullEnCh=38.2272841051322 ResultsMap={Err222Rn=4.5129 Err232Th=4.5559 Err40K=63.0 Res1460_keV=1755.1 Res222Rn=29.7542 Res232Th=34.4803 Res40K=343.0 ResControlValue=11.957 ResList=ControlValue 1460_keV 222Rn 232Th 40K ResTitle=Processing results ResTitleL=Energy ResTitleR=Peak position: Unit1460_keV=chan Unit222Rn=Bq/kg Unit232Th=Bq/kg Unit40K=Bq/kg UnitControlValue=1/sec VwComment1755=1460_keV VwComments=1755} SpLen=4096 StartTime=7/6/2016 4:09:53 PM TaskMap={CCRWindow=100 2000 CalMethod=points 1460 CalMethodROI=0.25 0.35 0.5 0.6 D2SFilter=3 40 1.2 0 ERegion=300 3000 FonCmpntFon=0 Geometry=4Pi ImmMethod=Average IsBeep=1 MtrWnds=300 400 580 630 720 800 1030 1400 1580 1860 2250 2400 2800 ProbeID=1 RepeatCounter=100000 ReportHtml=monitor.html RoundStartTime=7/6/2016 3:00:00 PM SaveInDrv=no SepComponents=40K 222Rn 232Th SepMethod=Mt Synonim222Rn=226Ra TaskFonFile=default TaskName=222Rn monitor TreatAfter=600} _DrvConnectionString={VendorID=21323 ProductID=1 ID=3242 SpLen=4096 Shift=0 Cut=0 LLD=0 HLD=16} _DrvDeviceDll=usbdrv.hmd _DrvDeviceName=Gamma542 _LTm=1800.002651 _SpVersion=2092 \0@\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\ ... gibberish data

'SF8IB\0\0DeviceERegion=400 4000 DeviceName=Gamma spectrometer NaI N542 DeviceNick=Gamma542 DeviceType=ScGammaSp FonFile=$(DevicePath)\\title.spc GeomMap={Compton=64x64m.tbl CpnUnit=Bq/kg ERegion=400 4000 Eff=0.1 0.7 ImmMethod=Average ImmWnds=300 400 580 630 720 800 1030 1400 1580 1860 2250 2400 2800 Rsn=-13 3 SysErr_40K=0.15 SysErr_def=0.1} KevPerCh=.865843086259212 LTime=1800.009635 NullEnCh=38.2272841051322 ResultsMap={Err222Rn=4.306 Err232Th=4.6265 Err40K=61.9 Res1460_keV=1756.4 Res222Rn=27.7726 Res232Th=35.1891 Res40K=335.9 ResControlValue=11.740 ResList=ControlValue 1460_keV 222Rn 232Th 40K ResTitle=Processing results ResTitleL=Energy ResTitleR=Peak position: Unit1460_keV=chan Unit222Rn=Bq/kg Unit232Th=Bq/kg Unit40K=Bq/kg UnitControlValue=1/sec VwComment1756=1460_keV VwComments=1756} SpLen=4096 StartTime=7/6/2016 7:11:28 PM TaskMap={CCRWindow=100 2000 CalMethod=points 1460 CalMethodROI=0.25 0.35 0.5 0.6 D2SFilter=3 40 1.2 0 ERegion=300 3000 FonCmpntFon=0 Geometry=4Pi ImmMethod=Average IsBeep=1 MtrWnds=300 400 580 630 720 800 1030 1400 1580 1860 2250 2400 2800 ProbeID=1 RepeatCounter=99994 ReportHtml=monitor.html RoundStartTime=7/6/2016 3:00:00 PM SaveInDrv=no SepComponents=40K 222Rn 232Th SepMethod=Mt Synonim222Rn=226Ra TaskFonFile=default TaskName=222Rn monitor TreatAfter=600} _DrvConnectionString={VendorID=21323 ProductID=1 ID=3242 SpLen=4096 Shift=0 Cut=0 LLD=0 HLD=16} _DrvDeviceDll=usbdrv.hmd _DrvDeviceName=Gamma542 _LTm=1800.009635 _SpVersion=14628 \0@\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0 ...more gibberish data

Некоторая базовая информация кажется читаемой, но после определенного момента \ 0указать какую-то сетку (?), которая не переводится в виде простых чисел.

Мой коллега сказал мне, что это какой-то тип данных, который после вставки в Matlab преобразуется в тип изображения для спектрального анализа..

В моем основном проекте mvc asp.net (объектная структура распознает mediumblob как байтовый массив), когда я пытаюсь извлечь этот тип данных из БД, я хочу преобразовать его в файл .txtтак что пользователь может загрузить его по отдельности и вставить в Matlab.По сути, я хочу видеть следующее в моем списке в файле .cshtml:

Id |    File   | Location
---------------------
1  | file1.txt | location1
2  | file2.txt | location2
.
.
.

, где в исходном коде я ожидаю что-то вроде следующего:

@foreach (var item in Model.Data)
        {
            <tr>
                <td>
                    @Html.DisplayFor(modelItem => item.Id)
                </td>                    
                <td>
                    @Html.TextFileFor(item.Isp)
                   *or* <a>@Url.Action("DownloadFile", "Data", item.Isp)</a>
                </td>
                <td>
                    @Html.DisplayFor(modelItem => item.Location)
                </td>
            </tr>
        }

ГдеФайл .txt после нажатия будет загружен в каталог пользователя.Поскольку я имею дело с типом изображения, неизвестным в asp.net, как я могу преобразовать этот байтовый массив [] в текстовый файл, распознаваемый с помощью matlab?

...