Pavel
06.04.2016
13:23:06
имхо это лучше хранить как byte[] или char[]
Просто набор байтов
И ты по ним можешь с помощью индекса ходить как хочешь. Классика очевидная.
Dmitry
06.04.2016
13:24:14
а bitArray где полезен?
Google
Pavel
06.04.2016
13:25:56
Когда тебе нужно с битами в данных работать
Dmitry
06.04.2016
13:26:39
можешь какой нить пример привести? Ну чтобы понятно было где оно может пригодиться
Pavel
06.04.2016
13:27:10
Ну блин например у тебя есть маска прав доступа для юзера
8 бит = 1 байт
Ты можешь выставить юзеру какие-то биты
Dmitry
06.04.2016
13:27:32
тоесть если я данные в byte[] загоню, то примитивов для работы с битами не будет?
Pavel
06.04.2016
13:28:05
например 00000001 - это значит что он гость
00000010 - зарегистрированный пользователь
00000110 - зарегистрированный пользователь + модератор
Вся эта маска будет занимать всего 1 байт в памяти
Dmitry
06.04.2016
13:28:34
а...
Pavel
06.04.2016
13:28:40
и туда можно независимо друг от друга впихнуть 8 флажков
Dmitry
07.04.2016
07:43:54
Подскажите, кто как бинарные блобы в БД обычно грузил? Я делаю так, но не уверен, что оно данные как надо загруждает
http://img.ctrlv.in/img/16/04/07/57060da185b19.png
просто потом этот же блоб пытаюсь на файловую систему записать и там тупо получаю:
[56, 57, 53, 48, 52, 101, 52, 55, 48, 100, 48, 97, 49
Pavel
07.04.2016
07:59:47
А как ты пишешь в файл?
Google
Dmitry
07.04.2016
08:04:56
std.file.write("11111.png", cast(byte[])md.userblob);
Pavel
07.04.2016
09:02:20
А если кастовать в char* ?
http://stackoverflow.com/questions/3860554/binary-file-i-o
Вот попробуй raw write
Dmitry
07.04.2016
09:21:54
Pavel, а не можешь помочь мне правильно понять смысл фразы:
"bytea will store non-printable values of the byte stream as the string representation of the octal value of that value"
откуда в бинарном блобе (к примеру загружаю изображение) могут появиться non-printable values ?
raw write тоже пробовал — тот же эффект
тут ПГ данные как-то по своему хранит походу
тоесть типа чтобы эти биты как команды управляющие не были восприняты во время загрузки?
Pavel
07.04.2016
09:32:15
В блобе данные хранятся побайтово
Байт - это число от 0 до 255, код символа
Непечатаемые символы это числа от 0 до 31
А в bytea значит они запишутся как строка типа "\022"
Dmitry
07.04.2016
09:34:13
а проблема тут в чем? Что эти символы как команды могут восприниматься?
Pavel
07.04.2016
09:35:01
Ну видимо в том что bytea это не бинарный формат данных, и он форматирует их
Dmitry
07.04.2016
09:35:38
есть идеи зачем это могло быть сделано?
Pavel
07.04.2016
09:35:59
Кароч, давай я сегодня вечером попробую в пг записать и считать файл
И расскажу как чо
Dmitry
07.04.2016
09:36:25
хорошо
а то хочется разобраться с вопросом
Так, БД очевидно умеет отдавать только 16-тиричную строку. Вопрос, как мне ее в byte [] перевести?
Google
Dmitry
07.04.2016
13:30:52
я пока даже не совсем понимаю в какой тип данных ее класть
0x9d8e
07.04.2016
13:34:25
Ну если нет готовой функции hex=>bin, то её и написать не сложно. Во всяком случае в список байтов её перевести дело плёвое.
16-ричная строка же в смысле 0123456789ABCDEF ?
Dmitry
07.04.2016
13:35:39
а готового ничего нет? Чтобы уже кто-то протестировал, а то щас еще где нить накасячу сам.
0x9d8e
07.04.2016
13:35:54
Должно бы быть
Dmitry
07.04.2016
13:35:54
Ну смотри, PG согласно документации может отдавать блоб только в 16-ти ричной форме
так что наверно да
http://www.postgresql.org/docs/current/static/datatype-binary.html
вот я топик создал http://forum.dlang.org/thread/oibiefnowwsnokqmpsax@forum.dlang.org
0x9d8e
07.04.2016
13:37:34
А, ну точно. Только похоже она там с дополнительными фичами
Формат экранирования какой-то предусмотрен
Dmitry
07.04.2016
13:39:00
а зачем в бинарной строке экранирование может потребоваться?
0x9d8e
07.04.2016
13:40:02
А хз
Alex
07.04.2016
14:11:01
ребята
как помочь дилангу
Dmitry
07.04.2016
14:13:45
в плане?
Alex
07.04.2016
14:14:00
а хз
в любом
чо он такой не популярный
Max
07.04.2016
14:14:15
Иешь и начинаешь проект, всё
Google
Alex
07.04.2016
14:14:18
я не хочу писать на с++
о
тогда пора помогать ди
а какую гуй библиотеку выбрать
Dmitry
07.04.2016
14:18:28
dlangui пока наверно
не идеал, но ничего лучше нет
Alex
07.04.2016
14:20:27
а иде какую
или нету
Pavel
07.04.2016
14:21:35
Monod
Vim
Dmitry
07.04.2016
14:21:42
Sublime
Mono-D очень годный
Alex
07.04.2016
14:23:06
а если я буду каждый вопрос по ди задавать на стековерфлоу
это поможет языку??
Dmitry
07.04.2016
14:23:52
нет)
Pavel
07.04.2016
14:24:00
Да
Dmitry
07.04.2016
14:24:06
только реальные пректы помогут)
Pavel
07.04.2016
14:24:16
Виральность повысится
Хотя отвечать на свои вопросы ты скорее всего будешь сам)
Alex
07.04.2016
14:25:15
ничо
Google
0x9d8e
07.04.2016
14:28:45
Ну и другим не надо будет эти вопросы заново решать
Вячеслав
08.04.2016
11:26:30
IDE, GUI
Заачем?
Берешь обычный проггерский текстовый редактор с поддержкой Ди, берешь Даб и кодишь х)
Для гуи должны быть библиотеки, гугли, ну или можно переделать цппшную, не помню как, но есть для этого сервисы х)
Alex
08.04.2016
14:04:12
я люблю брекпойнтить
Evil
08.04.2016
14:39:18
А вообще, gdb наше фсьо))
Там можно все тоже самое, что и в IDE
Alex
08.04.2016
17:13:45
http://alternativeto.net/software/d/?platform=linux ставим лойс
0x9d8e
08.04.2016
17:16:47
@expwez Не вижу там ж
*д
А, блин
вижу
в списке искал
Dmitry
09.04.2016
14:59:32
Вопрос. Вот предположим я объявляю экземпляр класса до main.
MyClass mc;
void main()
{
mc = new MyClass();
testClass tc = new testClass(mc);
}
т.е. получается он будет виден везде. Так?
Если он мне нужен будет в других классах мне нужно его явно туда передавать при их создании или он будет виден и без этого?
Вопрос по 32 строке http://www.everfall.com/paste/id.php?egbnslbgiz79
Alex
09.04.2016
16:07:14
http://www.everfall.com/paste/id.php?px1r9ptq0pai
так не работает?
http://dlang.org/spec/module.html
https://ideone.com/E8MHE6
Pavel
09.04.2016
16:48:16
Dmitry
09.04.2016
16:48:53
а точка что значит?
Pavel
09.04.2016
16:49:03
Кстати, можешь мне скинуть свой код по работе с pgsql ? Я попробую сделать чтение бинарных данных
а точка что значит?
Вот это не знаю, может обращение в локальному свойству объекта так в д делается?