|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
Помогите сделать так чтобы запись происходила не в txt, а в Excel Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. 116. 117. 118. 119. 120. 121. 122. 123. 124. 125. 126. 127. 128. 129. 130. 131. 132. 133. 134. 135. 136. 137. 138. 139. 140. 141. 142. 143. 144. 145. 146. 147. 148. 149. 150. 151. 152. 153. 154. 155. 156. 157. 158. 159. 160. 161. 162. 163. 164. 165. 166. 167. 168. 169. 170. 171. 172. 173. 174. 175. 176. 177. 178. 179. 180. 181. 182. 183. 184. 185. 186. 187. 188. 189. 190. 191. 192. 193. 194. 195. 196. 197. 198. 199. 200. 201. 202. 203. 204. 205. 206. 207. 208. 209. 210. 211. 212. 213. 214. 215. 216. 217. 218. 219. 220. 221. 222. 223. 224. 225. 226. 227. 228. 229. 230. 231. 232. 233. 234. 235. 236. 237. 238. 239. 240. 241. 242. 243. 244. 245. 246. 247. 248. 249. 250. 251. 252. 253. 254. 255. 256. 257. 258. 259. 260. 261. 262. 263. 264. 265. 266. 267. 268. 269. 270. 271. 272. 273. 274. 275. 276. 277. 278. 279. 280. 281. 282. 283. 284. 285. 286. 287. 288. 289. 290. 291. 292. 293. 294. 295. 296. 297. 298. 299. 300. 301. 302. 303. 304. 305. 306. 307. 308. 309. 310. 311. 312. 313. 314. 315. 316. 317.
... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2021, 12:44 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
В простейшем случае ты можешь переименовать расширение в СSV Код: plaintext 1.
И логфайл привести к табличному виду с разделителями например ";". И это Excel должен открыть как табличку. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2021, 12:50 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
*.xslx это xml в zip-архиве. Пишешь в xml, затем пакуешь. Структура xml тут описана . ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2021, 12:52 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
xamelione25f1.open("log.txt", ios_base::trunc); Вот в этой строчке надо ".txt" заменить на ".xlsx". Ну или читать спецификацию xlsx и переделывать весь вывод согласно ней. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2021, 12:52 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov, Dima T, mayton гляньте тут, я там писал более подробнее о проблеме с которой я столкнулся Модератор: Нет. Мы не будем ходить в другие форумы. Это - модераторский совет. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2021, 12:56 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
xamelione25, Записывай всё в tsv и не делай себе голову. \t - разделитель полей, \n - строк. Табы в строках меняй на что-нибудь. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2021, 13:21 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
crutchmaster, Dimitry Sibiryakov, mayton, да я уже с csv все решил ... спс)) единственное подскажите как сделать по конечным границам заполненных ячеек в икселе ... по окончанию записи в него ... в csv формате ... выделение всех границ ячеек входящих в этот диапазон ну например вот так ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2021, 13:29 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
xamelione25, В коде надо? - вкл записи макроса - выделить - посмотреть полученный код макроса. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2021, 14:17 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
crutchmaster xamelione25, Записывай всё в tsv и не делай себе голову. \t - разделитель полей, \n - строк. Табы в строках меняй на что-нибудь. Никогда не понимал этот формат. Табы на просмотре текста выглядят ужасно. Сложно понять - где пробел в данных а где разделитель. Чтоб трабл-шутить нужно смотреть вооруженным глазом через hex-editor или среду с подсветкой управляющих символов. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2021, 14:31 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
maytonТабы на просмотре текста выглядят ужасно. Отлично выглядит если 1) Данные примерно одинаковой длины; 2) Длина не близка в кратности таба. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2021, 14:37 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
mayton crutchmaster xamelione25, Записывай всё в tsv и не делай себе голову. \t - разделитель полей, \n - строк. Табы в строках меняй на что-нибудь. Никогда не понимал этот формат. Табы на просмотре текста выглядят ужасно. Сложно понять - где пробел в данных а где разделитель. Чтоб трабл-шутить нужно смотреть вооруженным глазом через hex-editor или среду с подсветкой управляющих символов. Не надо фигней заниматься, открыл в экселе и смотри. CSV намного хуже, где разделитель сам печатный символ, который может содержаться в данных. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2021, 14:39 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
Вот за что люблю наш форум... Архитекторы сцепились за сплиттер. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2021, 14:43 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
По сабжу. Если сплиттер == запятая, все нормально экранируется кавычками. И сами кавычки тоже. Код: plaintext 1. 2. 3. 4.
Ну а табулятор - невидимка. Вот такие дела. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2021, 17:33 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
mayton, >Ну а табулятор - невидимка. Вот такие дела. Та мы туда и не смотрим))) ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2021, 19:20 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
mayton Вот за что люблю наш форум... Архитекторы сцепились за сплиттер. Ты теоретик, а мы практики, нае... с этим ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2021, 21:09 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
Вы, практики наверное ничего больше 1 Гига в CSV не грузили в БД. А я - грузил. И в Excel такой файл не открывался. Вот такие пироги. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2021, 21:17 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
mayton Вы, практики наверное ничего больше 1 Гига в CSV не грузили в БД. А я - грузил. И в Excel такой файл не открывался. Вот такие пироги. Ты же не админ, код писать умеешь, зачем тут эксель вообще непонятно. У меня трижды в день качается 6-8 Гб, превращаю в БД размером 2 Гб, на все 40 минут уходит. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2021, 21:28 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
Хм.... 8 Гигабайт за 40 минут. Это приблизительно 204 Мб в минуту или 3.4 Мб в секунду. Медленно-ва-то... Для современных носителей и сетей. Хотя чорт его знает. Вангую что I/O небыстрый. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2021, 21:38 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
xamelione25, автор ну что? У тебя получилось CSV открыть в Excel? ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2021, 21:40 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
mayton Вангую что I/O небыстрый. Небыстрый FoxPro, на котором все написано. Но производительность всех устраивает ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2021, 21:41 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
mayton, да, открылся... ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2021, 21:43 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
Фокс - хорошая штука. Уважаю. У них интересный тип индекса был. Какой-то там rush. И на сравнительных тестах если сравнивать dBase vs Fox, то последний выигрывал когда были запросы специфичны к этому рашу. Интересно Microsoft перенёс это ноу-хау в MS-SQL? Кто есть MS-SQL-щики? Проясните plz. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2021, 21:44 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
mayton У них интересный тип индекса был. Какой-то там rush. Без детализации. Имхо, маркетинговый шит. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2021, 21:46 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
mayton Фокс - хорошая штука. Уважаю. У них интересный тип индекса был. Какой-то там rush. И на сравнительных тестах если сравнивать dBase vs Fox, то последний выигрывал когда были запросы специфичны к этому рашу. Интересно Microsoft перенёс это ноу-хау в MS-SQL? Кто есть MS-SQL-щики? Проясните plz. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2021, 22:11 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
А.. точно. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2021, 22:20 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
bk0010 Технология Rushmore. То ли сжатые индексы, то ли bitmap (не помню). Подробности тут , искать слово Rushmore. В том-то и дело, что подробностей нигде нет. Ни описания реализации, ни методики применения, одни общие слова. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2021, 22:28 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
на фоксклубе же есть для понимания ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2021, 22:32 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
Сложение битмапов полученных с двух/нескольких индексов для последующей выборки записей. Это использовали все кому не лень, включая Interbase. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2021, 23:05 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
По смыслу похоже на Bitmap Index. Однако фраза "это использовали все кому не лень" - слишком сильная фраза. Мне не нравится квантор "все". Это слишком идеализирует наш мир. Скорее использовали те кто хотел. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2021, 23:15 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
Откуда в FoxPro битмап индексы? (по крайне мере 2.5, 2.6, дальше уже Visual FoxPro) ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2021, 23:20 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
о VFP речь и идет ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2021, 23:28 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
Рашмор - не в индексах, а в способе использования сразу нескольких. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2021, 23:28 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
mayton Табы на просмотре текста выглядят ужасно. В сыром виде, что угодно выглядит ужасно. mayton Сложно понять - где пробел в данных а где разделитель. Просто надо использовать специальный софт, который делает табличку и умеет смотреть файл кусками. mayton Никогда не понимал этот формат. Это замечательный формат. Он преобразовывается в массив массивом буквально на раз-два. Делаешь сплит по \n, потом пробегаешься по тому, что вышло и делаешь сплит по \t. Всё. С csv - чехарда экранированием кавычек и "," / ";", которых в тексте, как правило, навалом, в отличии от табов. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2021, 04:36 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
mayton Если сплиттер == запятая, все нормально экранируется кавычками. И сами кавычки тоже. Никак она не экранируется. Парсеру надо бегать по строке и помнить, была там кавычка или нет. Еще кавычку в кавычках надо экранировать и вырезать по кавычке в начале/конце строки, когда перегоняешь из csv. В tsv экранируются только непечатные символы при записи, которые и так должны быть экранированы по всем правилам здравого смысла. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2021, 04:40 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
crutchmaster В tsv экранируются только непечатные символы при записи, которые и так должны быть экранированы по всем правилам здравого смысла. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2021, 06:56 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
mayton Фокс - хорошая штука. Уважаю. У них интересный тип индекса был. Какой-то там rush. И на сравнительных тестах если сравнивать dBase vs Fox, то последний выигрывал когда были запросы специфичны к этому рашу. Интересно Microsoft перенёс это ноу-хау в MS-SQL? Кто есть MS-SQL-щики? Проясните plz. Рашмор по сути это построение плана выполнения запроса. Официальных заявлений не было, а по сплетням что-то из фокса позаимствовали для MSSQL ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2021, 07:15 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
Basil A. Sidorov но не обязаны Обязаны. Если у тебя будут \r\n в строках их в любом случае придётся переделывать. Исключительно табы отэкранировать проще, когда заворачиваешь их в строку. Basil A. Sidorov прочие "радости" в полях записи. Какие "радости"? Непечатные? Их в любом случае надо экранировать. С печатными никаких проблем нет в принципе. Кроме \n\t следить не зачем. С запятыми еще натрахаешься, когда тебе с ru локали будут вещественные числа переводить в строку с запятой вместо точки и при парсинге ждать запятую. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2021, 07:24 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
crutchmaster Если у тебя будут \r\n в строках их в любом случае придётся переделывать. Урежьте, в общем, квантор всеобщности. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2021, 10:32 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
Basil A. Sidorov Урежьте, в общем, квантор всеобщности. А как твой csv читать, если там в значениях /n ?? Из-за такого вот говнолепства потом ломаешь голову. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2021, 10:38 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
crutchmaster mayton Если сплиттер == запятая, все нормально экранируется кавычками. И сами кавычки тоже. Никак она не экранируется. Парсеру надо бегать по строке и помнить, была там кавычка или нет. Еще кавычку в кавычках надо экранировать и вырезать по кавычке в начале/конце строки, когда перегоняешь из csv. В tsv экранируются только непечатные символы при записи, которые и так должны быть экранированы по всем правилам здравого смысла. Ты отстал от жизни. https://tools.ietf.org/html/rfc4180 Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12.
И переводы строки и кавычки внутри полей разрешены. Сложность парсера не имеет значения. Это его, парсера responsibility. Я речь вел просто о трабл-шутинге ошибок загрузки. И с моей скромной точки зрения чем больше принтабельных символов - тем лучше. TSV - тоже неплохо, но надо смотреть сквозь редактор с хайлайтом контролов. Я вижу единственный полезный смысл - поиграть с выбором символа квоты и сплиттера чтобы было меньше пересечений с доменной областью и CSV/TSV был human-readable особенно в тех случаях когда нам это ничего не стоит с точки зрения конфигурации. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2021, 11:52 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
crutchmaster А как твой csv читать, если там в значениях /n ?? Я утверждал (и утверждаю), что tsv не является "серебрянной пулей". ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2021, 12:29 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
mayton Сложность парсера не имеет значения. Это его, парсера responsibility. Ровно до тех пор, пока функционал парсера тебя устраивает и пока этот парсер доступен. mayton TSV - тоже неплохо, но надо смотреть сквозь редактор с хайлайтом контролов. CSV с переносом строк не надо смотреть сквозь редактор? Там вообще всё будет поломано. Ну и просмотр - это responsibility смотрелки. mayton И переводы строки и кавычки внутри полей разрешены. Что там у местного парсера таблички с многосточными значениями? Всё ожидаемо плохо? Почему не прикрутили нормальный парсер? Правильно, нахера делать нормальные человеческие эскейпы для спецсимволов, давайте херачить всё в двоичном виде и обламываться. Код: sql 1. 2. 3. 4. 5.
12"12""34" mayton Я вижу единственный полезный смысл - поиграть с выбором символа квоты и сплиттера Не из чего выбирать. \t, \n и escape \\ \t \n объективно лучше. Хочешь - меняй таб на ";" и смотри. Если твой редактор так не может - это его responsibility. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2021, 07:51 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
Basil A. Sidorov Я утверждал (и утверждаю), что tsv не является "серебрянной пулей". tsv - это лучший вариант. У вас не может быть против этого аргументов. Вы можете сказать, что парсеру надо делать замену для escape, но csv тоже надо менять две кавычки на одну. В остальном парсер tsv - элементарен, формат проще и надёжнее, чем csv. Легко просто и без сраных танцев делается, например, подсчёт строк или столбцов в строке. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2021, 08:04 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
Для записи TSV/CSV файлов редко используют специализированные оболочки, просто пишут как текстовый файл. В результате получается рабочий код, который стабильно работает пока оператор не заведет что-то нестандартное, например наименование товара начнет с двойной кавычки и начинается веселье: полдокумента почему-то не грузится, т.к. в CSV можно обрамлять перенос строк. В TSV тоже может быть подобное, хоть табуляция непечатный символ, но он копипастится, и этим способом попадает в БД, но тут проблемы только в одной строке, следующие грузятся, и источник проблемы проще искать. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2021, 08:25 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
Dima T Для записи TSV/CSV файлов редко используют специализированные оболочки Нее, руками писать в файл - это уже за гранью. Там напишут запятых в десятичный разделитель вместо точек, а таб может в принципе не вводиться (кнопка будет менять фокус элементов) Dima T хоть табуляция непечатный символ, но он копипастится Ничего не копипастится. Понятие структурированные данные и набор чего-то кривыми руками в редактор ортогональны. Там данные мало того, что будут не правильно структурированы, так там еще атрибуты записей никогда не будут соответствовать своему домену. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2021, 09:18 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
Dima T, Ну как в нашем тысячилетиии без ГУИ?) ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2021, 09:37 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
Dima T В TSV тоже может быть подобное, хоть табуляция непечатный символ, но он копипастится, и этим способом попадает в БД, но тут проблемы только в одной строке, следующие грузятся, и источник проблемы проще искать. Копипастится и попадает в БД? Прикольно вы работаете. LOL. А у вас там SQL injection случайно в БД не попадает? Я уж не говорю про то, что если проблемы в одной строке, то скорее всего вы эту ошибку никогда не найдёте. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2021, 10:45 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
petrav Dima T В TSV тоже может быть подобное, хоть табуляция непечатный символ, но он копипастится, и этим способом попадает в БД, но тут проблемы только в одной строке, следующие грузятся, и источник проблемы проще искать. Копипастится и попадает в БД? Прикольно вы работаете. LOL. А у вас там SQL injection случайно в БД не попадает? Я уж не говорю про то, что если проблемы в одной строке, то скорее всего вы эту ошибку никогда не найдёте. Это не мы. Мы выгрузку из той БД получаем с наездом что наша прога их файлик грузить не хочет. Ищется элементарно, если знаешь как в hex-редакторе посмотреть. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2021, 12:03 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
crutchmaster Что там у местного парсера таблички с многосточными значениями? Всё ожидаемо плохо? Почему не прикрутили нормальный парсер? Правильно, нахера делать нормальные человеческие эскейпы для спецсимволов, давайте херачить всё в двоичном виде и обламываться. [src] 12"12""34" Ну и зачем ты это написал? Это доказательство в стиле Паниковского. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2021, 12:22 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
crutchmaster mayton Сложность парсера не имеет значения. Это его, парсера responsibility. Ровно до тех пор, пока функционал парсера тебя устраивает и пока этот парсер доступен. Почему он станет недоступен? 6 тысяч CSV-парсеров с исходным кодом почти под все языки. Бери-нехочу. https://github.com/search?q=csv parser А хотя-бы и не было. Неужели сам бы не написал? Стандарт описан. Несложный. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2021, 12:25 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
petrav Копипастится и попадает в БД? Прикольно вы работаете. LOL. В этом нет никакого криминала. Табуляция вполне себе символ, никакой угрозы безопасности не несет. Вставить табуляцию копипастом элементарно благодаря браузерам. Пример: Выделяем табличку и давим Ctrl+C 1234 Вставляем что получилось Ctrl+V, а получился TSV Код: plaintext 1. 2.
Опубликовав это сообщение я сохранил табуляцию в БД сайта sql.ru :) ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2021, 12:50 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
mayton crutchmaster пропущено... Ровно до тех пор, пока функционал парсера тебя устраивает и пока этот парсер доступен. Почему он станет недоступен? 6 тысяч CSV-парсеров с исходным кодом почти под все языки. Бери-нехочу. https://github.com/search?q=csv parser А хотя-бы и не было. Неужели сам бы не написал? Стандарт описан. Несложный. Вообще спор не стоит выеденного яйца. Нужно просто использовать качественную библиотеку и не париться. Давайте лучше поговорим про строки и Юникод. А лучше вообще разработаем свой класс строки. Ведь С++ это язык программирования созданный что бы писать свои классы строк. Я и название придумал: JaString. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2021, 12:53 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
mayton 6 тысяч CSV-парсеров с исходным кодом почти под все языки. Бери-нехочу. Проблема как раз в продвинутости парсеров, они слишком много нарушений прощают. Пример вышеописанной проблемы с кавычкой. Сохрани текст ниже в файл CSV и открой его экселем Код: plaintext 1. 2.
... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2021, 13:10 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
Dima T petrav Копипастится и попадает в БД? Прикольно вы работаете. LOL. В этом нет никакого криминала. Табуляция вполне себе символ, никакой угрозы безопасности не несет. Вставить табуляцию копипастом элементарно благодаря браузерам. Пример: Выделяем табличку и давим Ctrl+C 1234 Вставляем что получилось Ctrl+V, а получился TSV Код: plaintext 1. 2.
Опубликовав это сообщение я сохранил табуляцию в БД сайта sql.ru :) Криминала нет? А потом в БД данные не грузятся? Ну не знаю… Тут дело в том что в UI должен быть фильтр, аля белый список, который пропускает только то что можно. Если табы по смыслу поля данных недопустимы, то их там (в БД) быть не должно — хоть копипасть, хоть чё делай. Далее… Нужно использовать качественную библиотеку в которой исключены сбои из-за каких-то нюансов. Всё должно быть экранировано и т.д. Возможно она же (библиотека) проверяет корректность данных: говорим ей непечатных символов, кроме пробелов, быть не должно. И вот ещё что… Если ошибка только в одной строке, то тут возникает нюанс. В зависимости от того как построен парсер может случиться ситуация когда ошибка внешне станет незаметной если ошибка только в одной строке. False negative страшная вещь. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2021, 13:12 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
petrav Криминала нет? А потом в БД данные не грузятся? Ну не знаю… Тут дело в том что в UI должен быть фильтр, аля белый список, который пропускает только то что можно. Если табы по смылу поля данных недопустимы, то их там (в БД) быть не должно — хоть копипасть, хоть чё делай. Если не путаю там учет в 1С идет. Собственно и криминала не было до тех пор как потребовалось выгрузить именно в TSV, в любой другой формат табуляция выгружается без проблем. petrav И вот ещё что… Если ошибка только в одной строке, то тут возникает нюанс. В зависимости от того как построен парсер может случиться ситуация когда ошибка внешне станет незаметной если ошибка только в одной строке. False negative страшная вещь. Ошибка будет незаметна. Лишняя табуляция сдвинула последующие поля в строке ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2021, 13:19 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
petrav Далее… Нужно использовать качественную библиотеку в которой исключены сбои из-за каких-то нюансов. Всё должно быть экранировано и т.д. Возможно она же (библиотека) проверяет корректность данных: говорим ей непечатных символов, кроме пробелов, быть не должно. Теоретически да, а практически если у тебя десятки-сотни разных источников этих выгрузок, то ты просто устанешь долбить всех писателей чтобы писали правильно, плюнешь и будешь парсить лишь бы парсилось. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2021, 13:25 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
Dima T mayton 6 тысяч CSV-парсеров с исходным кодом почти под все языки. Бери-нехочу. Проблема как раз в продвинутости парсеров, они слишком много нарушений прощают. Пример вышеописанной проблемы с кавычкой. Сохрани текст ниже в файл CSV и открой его экселем Код: plaintext 1. 2.
Это философия. Или старый принцип проектирования гетерогенных систем. Аналогичный текст я читал где-то в сетевых протоколах. https://tools.ietf.org/html/rfc4180 Код: plaintext 1. 2. 3. 4. 5. 6. 7.
Вобщем writer/serializer должен быть максимально строг. А reader/parser/de-serializer - максимально толерантен к исходным данным. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2021, 14:23 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
petrav Давайте лучше поговорим про строки и Юникод. А лучше вообще разработаем свой класс строки. Ведь С++ это язык программирования созданный что бы писать свои классы строк. Я и название придумал: JaString. Зачем? ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2021, 14:29 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
смотрю в dbForge для MySql настройки выгрузка-копирование в CSV - хочешь - в кавычках все, хочешь - только текст хочешь - все поля без кавычек разделитель настраивается и все нормально работает надо понять что CSV должен быть настраиваемым, как загрузка так и выгрузка и TSV - частный случай CSV ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2021, 14:41 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
ЕМНИП при импорте произвольных пользовательских данных в Excel - есть мастер импорта который позволяет указать различные границы колонок и сплиттеры. Есть даже вариант испорта fixed-column. Это тесно связано со старыми форматами dbms где records имели одинаковый бинарный размер. Щас такое уже не катит но лет 20 назад можно было взять dbBase/FoxPro датафайл. Отрезать ему голову и спокойно заимпортировать такой файл в Excel. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2021, 14:50 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
mayton ЕМНИП при импорте произвольных пользовательских данных в Excel - есть мастер импорта который позволяет указать различные границы колонок и сплиттеры. Есть даже вариант испорта fixed-column. Это тесно связано со старыми форматами dbms где records имели одинаковый бинарный размер. Щас такое уже не катит но лет 20 назад можно было взять dbBase/FoxPro датафайл. Отрезать ему голову и спокойно заимпортировать такой файл в Excel. Записи в DBF фиксированного размера, а числа с датами хранятся в сериализованном виде. Хотя непонятно зачем это делать если эксель и так их открывает. Но нынче фокус может не пройти, т.к. добавились типы которые хранятся без сериализации (int, datetime) ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2021, 14:56 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
Ну или без dbf. Вот такие позиционные форматы. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9.
... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2021, 19:30 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
mayton, нынче json и строки в utf8 наше всё. Даже MS с этим согласен. Зачем старье ворошить? Его надо хоронить, и чем быстрей, тем лучше. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2021, 20:55 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
Наше всё это православный XML и XML схемы. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2021, 21:14 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
petrav Наше всё это православный XML и XML схемы. MS уже так не считает, это тоже старье ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2021, 21:20 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
Dima T mayton, нынче json и строки в utf8 наше всё. Даже MS с этим согласен. Зачем старье ворошить? Его надо хоронить, и чем быстрей, тем лучше. (задумчиво) Если рассматривать json как способ экспорта или импорта данных - то скорее нет, чем да. При прочих условиях (есть выбор) я-бы выбирал лаконичный способ отдать данные. JSON (JavaScrip Object notation) создавался для сериализации браузерных объектов и транспорта их в веб-соединениях. И если у вас есть таблица в 8Гб в сыром виде (это близко к размеру в CSV) то ее представление в JSON может удвоить объем файла экспорта. Кто из нас готов согласиться с таким внезапным увеличением накладных расходов? И зачем? Все равно прогрузить в память такой файл (16 Гб) почти нереально. А если не грузить - то как делать запросы через JSonPath, JSonifier. Хотя для REST-сервисов он удобен. Как само-описательный. Все значения посылаемого месседжа - имеют внятные названия и их видно глазами в tcp-dump например. Даже кодер слабой квалификации более-менее сносно решает проблемы если ему показать проблемный request/response в этом формате. Но в Рест-сервисах речь-бы не шла о 8Гб. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2021, 21:33 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
petrav Наше всё это православный XML и XML схемы. XML был смелым экспериментом в 2000х. У меня на эту тему было куплено несколько восторженных книг. Есть такая избитая фраза - "практика показала"... Вобщем показала что некоторые из предметных областей (XHTML, Dbms (Sedna), Oracle(XmlType)) провалились в части активного использования XML. Или не принесли ожидаемого эффекта. Например при выборе опции формата REST ответа - большая часть разработчиков и кастомеров выбирают Json вместо Xml. Это обычный прагматизм и бритва Оккама. Если задача решается вовлечением меньшего числа сущностей - то ее так и надо решать. Xml даже для разработчика сложен. Он имеет много уровней семантики. (Как например С++ имеет уровни макро-процессинга и шаблонизации) и разработчики НЕ готовы их ВСЕ использовать. А не готовы просто потому что эти уровни оказались не нужны. Например XSLT и стандартизация схемы. И если эти все уровни не задейстовать - тогда возникает вопрос - а зачем вам вообще Xml? Ради красивого слова? Или угловых скоб? ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2021, 21:45 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
mayton Xml даже для разработчика сложен. Он имеет много уровней семантики. (Как например С++ имеет уровни макро-процессинга и шаблонизации) и разработчики НЕ готовы их ВСЕ использовать. А не готовы просто потому что эти уровни оказались не нужны. Например XSLT и стандартизация схемы. И если эти все уровни не задейстовать - тогда возникает вопрос - а зачем вам вообще Xml? Ради красивого слова? Или угловых скоб? В случае сложных документов лично мне кажется, что XML гораздо более читабелен чем json. При наличии XML-схемы в редакторе гораздо (на порядок) легче писать XML документы благодаря автодополнению кода — Ctrl+Space и появляется меню с возможными элементами или допустимыми значениями атрибутов. Что-то мне подсказывает, что XML (даже без схем) вообще лучше поддаётся автоматической валидации по сравнению с json. Когда я работал в web я знал и XSLT, и Схемы, и XPath (и даже DTD). Проблем не было. XML схемы я вообще в метро выучил полистывая распечатанную документацию. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2021, 22:01 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
mayton JSON (JavaScrip Object notation) создавался для сериализации браузерных объектов и транспорта их в веб-соединениях. И если у вас есть таблица в 8Гб в сыром виде (это близко к размеру в CSV) то ее представление в JSON может удвоить объем файла экспорта. В запакованном виде они не сильно будут отличаться. Еще один неприятный момент CSV - отсутствие описания структуры данных. Прилетает такая выгрузка из 10-15 колонок и сиди гадай где что. Потом разнородные данные не сохранить в один файл CSV. А как правило надо выгрузить именно такие данные. Например при выгрузке накладной надо куда-то писать шапку. Сталкивался с тем что при небольшой шапке ее суют в тело, т.е. табличка становится такой Номер документа Дата КонтрагентТоварКоличество И хз что теперь меньше на диске займет. mayton Все равно прогрузить в память такой файл (16 Гб) почти нереально. Не надо его грузить целиком, читай последовательно. С большими json дела не имел, а с xml было дело, файлик 0.5 Гб быстро читается с помощью XmlReader Наверно и для json есть подобное. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2021, 07:59 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
mayton Xml даже для разработчика сложен. Он имеет много уровней семантики. (Как например С++ имеет уровни макро-процессинга и шаблонизации) и разработчики НЕ готовы их ВСЕ использовать. А не готовы просто потому что эти уровни оказались не нужны. Например XSLT и стандартизация схемы. И если эти все уровни не задейстовать - тогда возникает вопрос - а зачем вам вообще Xml? Ради красивого слова? Или угловых скоб? Кстати сказать, а наличие JSON Schema тебя не смущает? Странные у тебя рассуждения. PS: Json популярен не потому что XML плох, а потому что JavaScript — единственный язык программирования фронт-энда. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.02.2021, 13:08 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
Может ли json описывать документы? Вот никогда такого не видел. Пример: Код: plaintext 1. 2. 3. 4.
Ну и как тут без XSLT... ... |
|||
:
Нравится:
Не нравится:
|
|||
22.02.2021, 13:21 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
petravJavaScript — единственный язык программирования фронт-энда.это в каком виде спорта?) ... |
|||
:
Нравится:
Не нравится:
|
|||
22.02.2021, 13:25 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
petrav mayton Xml даже для разработчика сложен. Он имеет много уровней семантики. (Как например С++ имеет уровни макро-процессинга и шаблонизации) и разработчики НЕ готовы их ВСЕ использовать. А не готовы просто потому что эти уровни оказались не нужны. Например XSLT и стандартизация схемы. И если эти все уровни не задейстовать - тогда возникает вопрос - а зачем вам вообще Xml? Ради красивого слова? Или угловых скоб? Кстати сказать, а наличие JSON Schema тебя не смущает? Странные у тебя рассуждения. PS: Json популярен не потому что XML плох, а потому что JavaScript — единственный язык программирования фронт-энда. Я пробовал Json-schema. К сожалению мне не удалось сделать проверки достаточно строгими. Тоесть у меня получилось проверять только те сущности которые были декларированы. А новые почему-то успешно проходил валидацию хотя и не должны-быть по идее. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.02.2021, 13:31 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
Dima T Не надо его грузить целиком, читай последовательно. С большими json дела не имел, а с xml было дело, файлик 0.5 Гб быстро читается с помощью XmlReader Наверно и для json есть подобное. json это всё таки в первую очередь объект а уж во вторую - таблица. Поэтому если работать с ним на стандартных ЯП программирования веба (JavaScript/C#/Java/Node) то я готов спорить на виски что для отработки реквеста ... ну не знаю с JPointer нам придется прогрузить весь документ-объект в память. Вариант курсора (аля БД) скорее всего не сработает. Хотя и респонс может выглядеть как итератор например. Словом - это тема отдельного топика. Накладные расходы на JPointer при запросах к толстым документам. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.02.2021, 13:35 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
Dima T mayton JSON (JavaScrip Object notation) создавался для сериализации браузерных объектов и транспорта их в веб-соединениях. И если у вас есть таблица в 8Гб в сыром виде (это близко к размеру в CSV) то ее представление в JSON может удвоить объем файла экспорта. В запакованном виде они не сильно будут отличаться. Еще один неприятный момент CSV - отсутствие описания структуры данных. Прилетает такая выгрузка из 10-15 колонок и сиди гадай где что. Да. Это проблема. Но внятные описания колонок можно сгенерировать лишь для небольшого подмножества таблиц с малым числом колонок. Я работал с дата-аналитикой где количество колонок было до 1000. И названия у них были такие типа FXC01.D2.M4 e.t.c. И была какая-то визуальная хронология. Тоесть следующая колонка могла быть инкрементом от предыдущей. И понимал такое имя - только data-analyst который работал с данными и мог сказать что - цена акции такой-то в таких-то единицах. Для таких баз отдельно создавалась мелкая базка которая называлась мета-информация и туда складывались детальные характеристики. Дескрипшен. Единицы. Иногда вместо этой базки мог быть хардкод в софте. Например сет классов или пропертей описывал эти колонки наподобие ORM. Хотя сам ОРМ не использовался но идея была похожа. Тоесть вобщем неинформативные названия реально существуют но XML не решает на 100%. По крайней мере я не видел провайдеров бизнес-информации которые лично решили публиковать сводки в XML только потому что там информативные поля. Скоре они выбирали CSV и полагались на мастерство и опыт тех людей для которых этот CSV был предназначен. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.02.2021, 13:42 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
mayton petrav пропущено... Кстати сказать, а наличие JSON Schema тебя не смущает? Странные у тебя рассуждения. PS: Json популярен не потому что XML плох, а потому что JavaScript — единственный язык программирования фронт-энда. Я пробовал Json-schema. К сожалению мне не удалось сделать проверки достаточно строгими. Тоесть у меня получилось проверять только те сущности которые были декларированы. А новые почему-то успешно проходил валидацию хотя и не должны-быть по идее. XML схема тоже не сказать что бы больно навороченный язык. Но неизвестные элементы и атрибуты он не пропускает. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.02.2021, 13:58 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
Щас не хватает времени. Но я до пятницы проверю. И если это правда - то создам топик на тему Xml-Schema vs Json-Schema. Who is stricter? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.02.2021, 14:25 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
mayton Dima T Не надо его грузить целиком, читай последовательно. С большими json дела не имел, а с xml было дело, файлик 0.5 Гб быстро читается с помощью XmlReader Наверно и для json есть подобное. json это всё таки в первую очередь объект а уж во вторую - таблица. Поэтому если работать с ним на стандартных ЯП программирования веба (JavaScript/C#/Java/Node) то я готов спорить на виски что для отработки реквеста ... ну не знаю с JPointer нам придется прогрузить весь документ-объект в память. Вариант курсора (аля БД) скорее всего не сработает. Хотя и респонс может выглядеть как итератор например. Словом - это тема отдельного топика. Накладные расходы на JPointer при запросах к толстым документам. Отсутствует json SAX парсер для быстрого чтения огромных документов? Ну вот видите, уже нашли третий недостаток json по сравнению с XML. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.02.2021, 20:56 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
petrav mayton пропущено... json это всё таки в первую очередь объект а уж во вторую - таблица. Поэтому если работать с ним на стандартных ЯП программирования веба (JavaScript/C#/Java/Node) то я готов спорить на виски что для отработки реквеста ... ну не знаю с JPointer нам придется прогрузить весь документ-объект в память. Вариант курсора (аля БД) скорее всего не сработает. Хотя и респонс может выглядеть как итератор например. Словом - это тема отдельного топика. Накладные расходы на JPointer при запросах к толстым документам. Отсутствует json SAX парсер для быстрого чтения огромных документов? Ну вот видите, уже нашли третий недостаток json по сравнению с XML. Почему? JSon readers существуют. И я думаю что их много. Просто CSV регламентирует некую однородность записей а JSon - в общем случае - нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.02.2021, 21:07 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
mayton petrav пропущено... Отсутствует json SAX парсер для быстрого чтения огромных документов? Ну вот видите, уже нашли третий недостаток json по сравнению с XML. Почему? JSon readers существуют. И я думаю что их много. Просто CSV регламентирует некую однородность записей а JSon - в общем случае - нет. Ты чуть выше сказал, что придётся грузить сразу объект в 16 Гб. Из этого я сделал такое предположение. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.02.2021, 21:18 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
petrav mayton пропущено... Почему? JSon readers существуют. И я думаю что их много. Просто CSV регламентирует некую однородность записей а JSon - в общем случае - нет. Ты чуть выше сказал, что придётся грузить сразу объект в 16 Гб. Из этого я сделал такое предположение. Да. Все верно. Я-же написал - если "делать запросы" к содержимому. Типа SELECT узлы WHERE какое-то свойство e.t.c. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.02.2021, 21:28 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
petrav, > PS: Json популярен не потому что XML плох, а потому что JavaScript — единственный язык программирования фронт-энда. == Стразу 3 ошибки - xml не плох, он многословен - на фронте нет json, это формат передачи данных - сегодня уже он шарпе, java и REST API а не JS. Не нужно их противопоставить вообще. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.02.2021, 09:56 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
JSon в общем случае не является заменой XML, т.к. в последнем заложено больше семантики, больше смыслов. Любые попытки заменить XML на Json сегодня сродни попыткам например заменить реляционные DBMS на NoSQL системы. В частных случаях это срабатывает но в общем - мы теряем. Теряем возможности и смыслы которые были заложены создателями изначально. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.02.2021, 11:21 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
вы упорядочьте сначала, зачем создавался формат, как позиционировался и как используется. начнем (далее все может быть не верно) xml создавался как формат обмена данными вне зависимости от бд и структуры. json - для хранения небольших данных ... |
|||
:
Нравится:
Не нравится:
|
|||
23.02.2021, 11:42 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
mayton Ну и зачем ты это написал? Это пример того, что когда доходит до дела вместо цсв парсера имеем какие-то костыли на коленке, а не полноценный парсер. Если уж костылить, костылили бы лучше тсв. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.02.2021, 12:54 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
mayton Почему он станет недоступен? У автора этого движка спроси, почему он не поставил пром.парсер. И у авторов екселя заодно, почему там не делали импорт как в либре. 6 тысяч CSV-парсеров Сколько из них вменяемые, а сколько - лабы и стрёмные велики без колёс? mayton А хотя-бы и не было. Неужели сам бы не написал? Чтобы сделать парсер, надо реализовать посимвольное вычитывание данных, что заметно геморнее, чем делать split, которого нету только у сишников и отсталых. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.02.2021, 12:58 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
Как в данной теме смешались стандартизация и человекочитаемость? Это две разные мои мысли, которые зачем-то кто-то спутал. Ради бога. Деайте тсв. Развеж я вас остановлю? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.02.2021, 12:59 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
crutchmaster Чтобы сделать парсер, надо реализовать посимвольное вычитывание данных, что заметно геморнее, чем делать split, которого нету только у сишников и отсталых. Это ... даже несеръезно. При чем здесь split? И при чем здесь какие-то "осталые" сишники? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.02.2021, 13:06 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
mayton (подозрительная ссылка!) https://github.com/search?q=csv parser Смотрим. https://github.com/ben-strasser/fast-cpp-csv-parser/blob/master/csv.h Оопота на 1к строк. Ну да, мог бы и сам на коленке сделать. https://github.com/mholt/PapaParse/blob/master/papaparse.js Тормозная херня на 2к строк, где делают csv += _delimiter; Ну да, чо бы не написать парсер на коленке. Вместо Код: sql 1.
И развернуть escape, для случая, когда файл влазит в память. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.02.2021, 13:09 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
mayton И при чем здесь какие-то "осталые" сишники? Я не говорил, что сишники отсталые. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.02.2021, 13:10 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
mayton (задумчиво) Если рассматривать json как способ экспорта или импорта данных - то скорее нет, чем да. Если речь идёт про таблицы, то не "скорее", а решительно нет, не о чём тут думать. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.02.2021, 13:17 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
mayton Ради бога. Деайте тсв. Развеж я вас остановлю? Ну вдруг у тебя есть весомые аргументы против и я что-то упускаю из вида. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.02.2021, 13:20 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
(руки вверх) Всё ты победил! Делай на сплитах! Мне просто эта тема не интересна. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.02.2021, 13:23 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
mayton JSon в общем случае не является заменой XML, т.к. в последнем заложено больше семантики, больше смыслов. Если тезисно: каких смыслов больше в XML по сравнению с JSON? ... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2021, 10:42 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
petrav mayton JSon в общем случае не является заменой XML, т.к. в последнем заложено больше семантики, больше смыслов. Если тезисно: каких смыслов больше в XML по сравнению с JSON? Архитектурно, на этапе создания стандарта в XML были заложены namespaces. Это позволяло в 1 документ включать разные расширения таким образом что твой парсер может обрабатывать только свои (известные теги) а неизвестные просто пропускать. В Json такое сделать невозможно. Или как-то можно но наверное с потерей смыслов. Namespaces имеют полезное применение в Java frameworks в части конфигураций. Трансформация документов. Ты можешь создать XML-содержимое которое обработается браузером и к нему применится XSLT скрипт который адаптирует контент к HTML со стилями например. Эта фича редко применялась. В основном на back-end, хотя IE 100% ее поддерживал в 2000 годах точно. Сам скрипт должен быть доступен по http:// или file:// чтобы двигатель трансформации его увидел. По аналогии с #include в C++. Тоесть - никакого JavaScript а просто трансформация языком очень высокого уровня. На эту тему у нас даже есть подфорум https://www.sql.ru/forum/xml . Я немнжко не в теме т.к. последний раз работал с этим очень давно и многое поменялось. Но вот что я помню - то рассказал. Обработка инструкций. Сейчас насколько я помню эта фича отключается из-за безопасности. Но вкратце, в хедер XML можно включать команды операционки например. И они по идее должны исполнятся в момент открытия файла. Как это полезно исопльзовать - ХЗ но стандарт есть. Синтаксические удобства для публикации комментариев и блоков не-структурированного содержания (CDATA). XML также взят на вооружение в науке. В частности под него разрабатывались различные схемы описания доменов в химии и астрономии (щас пруфы не могу найти к сожалению но где-то в стандартах XMLSchemas). Это всё - смыслы. Тоесть если подытожить - то XML является наиболее строгим описательным способом для данных и знаний. Для JSon повторить подобное наверное тоже возможно - но придется придумывать НАД-стандарты сверху над простым и примитивным JSon. В рамках одной рабочей группы или проекта это возможно, но если топить за интеграцию между проектами и между кастомерами - то лучше наверное XML. Так проще. И меньше будет технических споров и недо-пониманий на этапе простого согласования формата RPC например. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2021, 11:18 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
maytonтвой парсер может обрабатывать только свои (известные теги) а неизвестные просто пропускать. В Json такое сделать невозможно. Что мешает пропускать неизвестные значения в JSON? Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2021, 13:49 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov maytonтвой парсер может обрабатывать только свои (известные теги) а неизвестные просто пропускать. В Json такое сделать невозможно. Что мешает пропускать неизвестные значения в JSON? Давай подумаем, как это будет с точки зрения парсера. Может быть я и не прав. Пускай брейнштормит шторм. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2021, 13:59 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov maytonтвой парсер может обрабатывать только свои (известные теги) а неизвестные просто пропускать. В Json такое сделать невозможно. Что мешает пропускать неизвестные значения в JSON? Эээ... это в XML как в С++. Две функции readFile() находятся в разных неймспейсах. И ты видишь только свой неймспейс. Если разные неймсейсы в XML совпадают по названию, то это тоже решается. В заголовке XML описываются названия NS и их URL, которые и являются их (NS) глобальными идентификаторами. Как тут: Код: plaintext 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2021, 14:00 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
maytonкак это будет с точки зрения парсера. Прочитал название значения, не смог распознать название - пропустил всё до конца значения. Точно так же в XML: прочитал открывающий тэг, не смог его опознать - пропустил всё до закрывающего тэга. Где проблема? Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2021, 14:07 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov maytonкак это будет с точки зрения парсера. Прочитал название значения, не смог распознать название - пропустил всё до конца значения. Точно так же в XML: прочитал открывающий тэг, не смог его опознать - пропустил всё до закрывающего тэга. Где проблема? Нет декларативности. В случае с явным указанием namespace - читающий (допустим это человек) может в документе глазами увидеть доменную модель которая доступна для интерпретации. В случае хардкодом этой логики в тело XML/Json парсера - эта информация для читающего неизветна. И ему надо будет консультироваться с L3 например чтобы понять почему тег <credit:amount> или "credit_amount" не виден в системе. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2021, 14:13 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
mayton <...> переименовать расширение в СSV <...>И это Excel должен открыть как табличку. Открыть-то он откроет, только при этом произойдёт потеря/искажение информации. Попробуйте открыть Excel-ем CSV-файл с таким содержимым: Код: pascal 1.
. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2021, 14:15 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
maytonчитающий (допустим это человек) может в документе глазами увидеть Ни XML, ни JSON не предназначены для чтения человеком. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2021, 14:18 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
Насколько я помню, в Excel есть мастер импорта. И там для каждого поля можно явно указать тип данных. Проблема неверной интерпретации целых/вещественных с плавающей точкой в Excel была давно. Она стара как мир. И о ней вобщем осведомлены все бизнес-пользователи которые имеют опыт. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2021, 14:18 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov maytonчитающий (допустим это человек) может в документе глазами увидеть Ни XML, ни JSON не предназначены для чтения человеком. Ну.. некоторые образцы исходного кода я тоже хотел-бы никогда не видеть. Что поделаешь. Такова суровая доля всех кто зашел в этот форум. Толи со входа L3 толи L1. Вопрос human-readablility я оставляю для нас открытым. И я почти готов согласится что читать его скорее неудобно чем удобно. Но ведь меня спросили о других вещах. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2021, 14:22 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
mayton, А что это за уровни L1 - L3? :) ... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2021, 14:24 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
Ну L3 - это мы с тобой. А L1 - это примерно девочка с колл-центра которая первая реагирует например что тебе не выдали кредит по технической ошибке в системе. Неважно вобщем. Просто разные уровни It-подготовки. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2021, 14:28 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
L0 - девочка-блондинка с колл-центра ... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2021, 14:52 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
mayton petrav пропущено... Это всё - смыслы. Спасибо за расширенный ответ. Могу добавить, что ещё в XSLT есть скрипты. А текст (сообщение) не обязательно неструктурированный CDATA. Текст в XML может быть структурирован — содержать теги. Где-то даже для математических формул я встречал XML схему. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2021, 15:26 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
Я думаю все видели прикол когда внуть JSON строки вставляют другой Json документ. Выглядит - ужасно. Происходит эскейпинг служебны символов. Бекслеши при этом удваиваются. Пока все в порядке. Но если предположить что какой-то кодер-умник рекурсивно 64 раза завернет 1 документ в документ контейнер по правилам JSon. То мы получим количество слешей близкое к шахматной легенде. Это когда мудрец попросил награду в виде зернышек на шахматной доске где каждая клетка имела геометрическую прогрессию количества зерен от предыдущей. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2021, 15:46 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
maytonЯ думаю все видели прикол когда внуть JSON строки вставляют другой Json документ. Лично я - нет. Я не смотрю результаты работы программ, написанных клиническими кретинами и вообще стараюсь ими не пользоваться. PS: То же самое произойдёт если те же самые кретины перекодируют русскую строку из ANSI в UTF-8 64 раза подряд. И вот это я реально видел. Но что это доказывает? Что обезьянам нельзя давать гранаты или подпускать к программированию?.. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2021, 15:51 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
Нет. Просто забавное наблюдение. Вот в Xml можно вот так написать. Документ в документе. Код: xml 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2021, 16:06 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
maytonВот в Xml можно вот так написать. Документ в документе. То же самое можно сделать и в JSON. Ты будешь делать далеко идущие выводы на основании кривого использования генератора документа или бага в нём?.. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2021, 16:15 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
Это забавное наблюдение. Не бери близко к сердцу. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2021, 16:34 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
И с точки зрения Xml-parser все узлы (Nodes) делятся на основные два под-типа. Elements и Attributes. Каким образом это сделать в Json? Возможно и получится, но будет еще один уровень смыслов. Сам JSon документ вследствие этого станет громоздким. Есть еще другие типы Nodes (комметарии и секции неформатированных данных) но мы о них уже говорили. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2021, 18:42 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
maytonКаким образом это сделать в Json? Это не надо делать в Json. Лучше задаться вопросом: "а назачем в XML несколько способом приготовить кошку". https://ru.wikipedia.org/wiki/JSON#Синтаксис - там как раз показано соответствие между JSON и XML. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2021, 18:59 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov. А куда делся элемент <person> ? А что вы будете делать когда у <firstName> вдруг появятся атрибуты? Я-же говорю. Вы можете придумать массу частных случаев. Но в обобщённом варианте процесс преобразования XML->JSON сопряжен либо с потерей смыслов либо с созданием еще одного слоя JSON тегов которые будут обязаны нести семантику Xml чтобы не допускать потерь. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2021, 19:07 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
maytonА куда делся элемент <person> ? Ушёл в умолчание. Пуристы могут переписать пример как Код: sql 1. 2. 3.
maytonА что вы будете делать когда у <firstName> вдруг появятся атрибуты? То же самое, что и в случае когда в C++ переменную понадобится запихать сразу несколько значений: сделаю её структурой. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2021, 19:13 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
Мы ходим по кругу. Ладно. Оставайтесь при вашем мнении. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2021, 19:45 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
maytonОставайтесь при вашем мнении. Естественно останусь. Кстати, этим мнением является "XML полная хрень, которую надо обходить за километр, да и JSON не лучше, но хотя бы проще". Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2021, 19:48 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov maytonОставайтесь при вашем мнении. Естественно останусь. Кстати, этим мнением является "XML полная хрень, которую надо обходить за километр, да и JSON не лучше, но хотя бы проще". А что по вашему лучше? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2021, 19:53 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
petravА что по вашему лучше? Всё, на что есть точная спецификация или синтаксическая диаграмма. Я в основном использую TLV. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2021, 20:12 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
mayton, У сишников нет веб проектов и надобности пересылать данные. Поэтому им xml, json как пятая нога. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2021, 20:21 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
PetroNotC Sharp и надобности пересылать данные. Oh, really? Щас тебя побьют :) ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2021, 20:23 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
PetroNotC Sharp mayton, У сишников нет веб проектов и надобности пересылать данные. Поэтому им xml, json как пятая нога. Отчасти прав, сишники пересылают байты, код на С/С++ это обычно транспортный уровень ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2021, 20:57 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
Dima T, +1 Со стороны то всегда виднее) ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2021, 23:06 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
mayton, Веб это гетерогенная система. https://ru.m.wikipedia.org/wiki/Гетерогенная_система Данные из одного Мира пересылаются в Другой. Поэтому в java прогеры наоборот повернуты на xml/json. Недавно один чел сериализовал в бд классы в виде json и просто не понимал что можно без него. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2021, 23:20 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov Я в основном использую TLV. Ну ты сравнил монокль и радиотелескоп. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2021, 13:39 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
petrav, В отличии от твоего он имеет стандарт. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2021, 14:40 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
Можем поговорить о трабл-шутинге. О том как наблюдать TLV формат невооруженным глазом. И как решать общие вопросы гетерогенного обмена данными. Как то: last/big endian. Разрядность целого числа. И прочее. Тоесть о наборе best-practices, которые будут сопровождать разработчика если он вдруг решил работать с TLV. Я-бы стравнил TLV с EBML, Protobuf, Apache Thrieft, EXI, и с бинарным форматом который используется в MongoDb для представления документов - по количеству фичей - по удобству изменения сопровождения кода и вывел-бы некое сравнительное заключение. Компактность и экономию места тоже можно включать в метрики. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2021, 15:55 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
maytonМожем поговорить о трабл-шутинге. А можем и не говорить, а просто вспомнить, что все вышеупомянутые гетерогенные системы обмениваются своими текстовыми посланиями поверх (внезапно!) двоичного IP. То есть согласование разрядности и конечности не является проблемой и заслуживает ровно одну строчку в спецификации протокола "все числа передаются в network format". Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2021, 16:33 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
Но это слова. Спека. А как вы практически решаете эти задачи? Должен быть API для декларативного описания месседжа. И должен быть API для приведения байтов и битов в "network format". ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2021, 17:38 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
maytonИ должен быть API для приведения байтов и битов в "network format". Так у IP, например, он есть: htonl(), htons(). У меня в проектах PushInt()/GatherInt(). Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2021, 17:41 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov maytonИ должен быть API для приведения байтов и битов в "network format". Так у IP, например, он есть: htonl(), htons(). У меня в проектах PushInt()/GatherInt(). И после такого ты возмущаешься на тот «мой» plain-ini формат? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2021, 18:44 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
petrav, Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8.
Забудь это слово. Детский сад какой то. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2021, 19:14 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov maytonКаким образом это сделать в Json? Это не надо делать в Json. Лучше задаться вопросом: "а назачем в XML несколько способом приготовить кошку". https://ru.wikipedia.org/wiki/JSON#Синтаксис - там как раз показано соответствие между JSON и XML. Я точно не знаю чем руководствовались разработчики XML. Но когда я разрабатывал структуру XML документов, я, конечно, сталкивался с выбором: атрибут или подэлемент? И всегда я руководствовался вопросами читабельности результирующих документов. Сравним: XML: Код: plaintext 1. 2. 3. 4. 5.
JSON: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
Очевидно XML и лаконичнее, и нагляднее нежели JSON. Даже просто по количеству технических символов разметки выигрывает XML. Просто мальчикам и девочкам, которые пришли в Web, с трудом освоили JavaScript… Им сложно задумываться: а что выбрать — атрибут или подэлемент? А синтаксис JS они худо бедно освоили. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2021, 20:20 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
petrav, Не пишите ерунду о том что JSON многословнее XML. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2021, 20:58 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
petrav Код: plaintext 1. 2. 3. 4. 5.
Если employee представляет собой плоскую (plain) структуру наподобие SQL datarow то все элементы могут быть атрибутами. Типа: Код: xml 1. 2. 3. 4. 5. 6.
Ну я-бы та сделал. Кортеж. Или tuple. Если какая-то часть employee расширяется на коллекцию элементов или имеет иерархическую структуру атомов - то мы можем сделать XmlElement с дочерними элементами чтобы подчеркнуть вложенность. Пример с коллекцией. Код: xml 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
Пример с структурой подчинения. Сотрудники №124 и 125 подчиняются Иванову. Код: xml 1. 2. 3. 4. 5. 6. 7. 8. 9.
... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2021, 21:14 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov maytonИ должен быть API для приведения байтов и битов в "network format". Так у IP, например, он есть: htonl(), htons(). У меня в проектах PushInt()/GatherInt(). Данный ответ я считаю неполным. Он вобщем не отвечает на мой вопрос. А мой вопрос заключается в том, насколько много вам нужно сделать действий чтобы описать некую бинарную (гетерогенную!) структуру. Сами по себе winsock API calls не являют собой решение этой проблемы. Они - просто некий промежуточный инструмент. И то находящийся строго в слое серверного программирования. Какие API calls вы будете вызывать в браузере? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2021, 21:19 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
mayton, Отложи в сторону браузер. Нет его в плюсах проектов. Вы в плюсах описываете структуру и в дельфи её читаете. Всё. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2021, 21:58 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
Как будет угодно. Это очень интересная позиция. Сводить спор по XML/JSON к TLV а потом в конечном счете к тому что это С++нику не надо. Зачем тогда вообще спор был? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2021, 22:05 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
mayton, Я тебе объяснил почему xml/json не интересны сишникам. Я когда им был тоже без них обходился. Писал в файл бинарник метку размер данные. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2021, 22:12 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
mayton Как будет угодно. Это очень интересная позиция. Сводить спор по XML/JSON к TLV а потом в конечном счете к тому что это С++нику не надо. А зачем же тогда в Qt всякие Xml, Json и прочие HttpRequest? :) ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2021, 22:19 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
petrav, Для настроек (файлов) молодой человек. А request не нужен. Ну или можно им курс валюты на сайте спросить. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2021, 22:55 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
petrav А зачем же тогда в Qt всякие Xml, Json и прочие HttpRequest? :) ... |
|||
:
Нравится:
Не нравится:
|
|||
07.03.2021, 15:27 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
bk0010 petrav А зачем же тогда в Qt всякие Xml, Json и прочие HttpRequest? :) База решает свой диапазон задач. И не решает например message queues между узлами вычислительной сети. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.03.2021, 20:07 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
PetroNotC Sharp petrav, Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8.
Забудь это слово. Детский сад какой то. Да, не ini. Но я же просил придумать название формата. Ты ничего не предложил. Модератор: не забывай об этикете ... |
|||
:
Нравится:
Не нравится:
|
|||
08.03.2021, 09:31 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
petrav, Ну очевидно же. Твой собственный формат никому не интересен. Настройки.мойформат Не подходит? Или боимся русских букв и более 8 символов? )))) ... |
|||
:
Нравится:
Не нравится:
|
|||
08.03.2021, 10:09 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
petrav, Мне тоже интересна. Только с инженерами. Без оффтопов. Ты кто? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.03.2021, 12:05 |
|
Заменить запись в файл с txt на xlsx
|
|||
---|---|---|---|
#18+
xamelione25, у тебя еще есть какие-то вопросы по теме? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.03.2021, 18:35 |
|
|
start [/forum/search_topic.php?author=elenasm&author_mode=last_topics&do_search=1]: |
0ms |
get settings: |
8ms |
get forum list: |
14ms |
get settings: |
11ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
159ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
168ms |
get tp. blocked users: |
2ms |
others: | 447ms |
total: | 845ms |
0 / 0 |