Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
改行区切りのJSON
Search
circled9
October 14, 2017
Technology
0
1k
改行区切りのJSON
JSON日の金曜日@新潟 9週目で発表した資料です。
circled9
October 14, 2017
Tweet
Share
More Decks by circled9
See All by circled9
キースイッチ入門
circled9
0
97
CloudflareのAI関連の機能さわってみた
circled9
0
790
0.0.0.0 day
circled9
0
120
小数の丸め誤差の話
circled9
0
150
数値の文字列をパースしよう
circled9
0
260
🔥 Hono v4 やってみた
circled9
1
210
JetBrains AI Assistant を試してみた
circled9
1
570
Fresh
circled9
0
270
React Hooks 勉強会 vol.3
circled9
2
460
Other Decks in Technology
See All in Technology
AIエージェントを開発しよう!-AgentCore活用の勘所-
yukiogawa
0
190
Oracle AI Database移行・アップグレード勉強会 - RAT活用編
oracle4engineer
PRO
0
110
Red Hat OpenStack Services on OpenShift
tamemiya
0
130
マネージャー視点で考えるプロダクトエンジニアの評価 / Evaluating Product Engineers from a Manager's Perspective
hiro_torii
0
180
広告の効果検証を題材にした因果推論の精度検証について
zozotech
PRO
0
210
SRE Enabling戦記 - 急成長する組織にSREを浸透させる戦いの歴史
markie1009
0
170
配列に見る bash と zsh の違い
kazzpapa3
3
170
ClickHouseはどのように大規模データを活用したAIエージェントを全社展開しているのか
mikimatsumoto
0
270
AIエージェントに必要なのはデータではなく文脈だった/ai-agent-context-graph-mybest
jonnojun
1
240
Kiro IDEのドキュメントを全部読んだので地味だけどちょっと嬉しい機能を紹介する
khmoryz
0
210
SchooでVue.js/Nuxtを技術選定している理由
yamanoku
3
200
Bedrock PolicyでAmazon Bedrock Guardrails利用を強制してみた
yuu551
0
260
Featured
See All Featured
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
2
3.6k
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
350
Building Flexible Design Systems
yeseniaperezcruz
330
40k
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
1.9k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
1.8k
SEO for Brand Visibility & Recognition
aleyda
0
4.2k
Claude Code のすすめ
schroneko
67
210k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.6k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.8k
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
280
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
320
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
9.6k
Transcript
վߦ۠ΓͷJSON @circled9 2017-10-13 #friday13json
ࣗݾհ.json { "name": "Matsui Masashi", "twitter": ["@circled9", "@ma_2_i"], "language": ["javascript",
"ruby"], }
Agenda • ͡Ίʹ • େମڞ௨ͯ͠Δ͜ͱ • ֤ϑΥʔϚοτͷհ • ·ͱΊ
͡Ίʹ
վߦ۠ΓͷJSON • վߦΛ۠Γจࣈͱͯ͠ѻ͏ϑΥʔϚοτ • ֤ߦvalidͳJSONͷ͕ॻ͔Ε͍ͯΔ • վߦ͠ͳ͍ͷͰɺՄಡੑ͋·Γॏࢹ͍ͯ͠ ͳ͍
վߦ۠ΓͷJSONͷαϯϓϧ {"some":"thing"} {"foo":17,"bar":false,"quux":true} {"may":{"include":"nested","objects":["and","arrays"]}}
ͳͥվߦͰ۠Δͷ͔ • JSONΛύʔε͢ΔʹɺϑΝΠϧͷ࠷ޙ·Ͱ ಡΈࠐ·ͳ͍ͱ͍͚ͳ͍ • վߦจࣈͰ۠Δ͜ͱʹΑͬͯɺϑΝΠϧΛ ෦తʹύʔεͰ͖ΔΑ͏ʹͳΔ
ϝϦοτ • ฒߦॲཧͰͷಡΈॻ͖͕͘͢͠ͳΔ • ֤ߦࠓ·ͰͷJSONͱมΘΒͳ͍ͷͰɺطଘ ͷࢿ࢈͕ੜ͔͍͢͠ • CSV/TSVͱൺֱ͢Δͱɺ֤ߦ͕දݱͰ͖Δ ༰͕ॊೈʹͳΔ
େମڞ௨ͯ͠Δ͜ͱ
ڞ௨͢Δܾ·Γ͝ͱ • ۠Γจࣈվߦจࣈ • ֤ߦվߦΛؚ·ͳ͍validͳJSONͷ • ΤϯίʔσΟϯάUTF-8
վߦจࣈ • LF (\n) ʹ͓͚ͯ͠ແ • CR+LF (\r\n) Ͱͳ͍ •
CR (\r) ͩͱ·͍ͣ͜ͱ͕͋Γͦ͏ • Mac OS 9ͳΜͯී௨ͬͯ·ͤΜͶ
վߦจࣈ • CRΛ۠Γจࣈͱͯ͠ѻ͏͔ɺ֤ϑΥʔϚο τʹΑͬͯҟͳΔ • ͔͠͠ɺҎԼͷཧ༝͔ΒCR+LFͰ࣮࣭ͳ͍ • ۭߦແࢹ͢Δͷ͕௨ྫ • JSONͷύʔε࣌ʹۭനจࣈআڈ͞ΕΔ
֤ϑΥʔϚοτͷհ
֤ϑΥʔϚοτͷհ • NDJSON • LDJSON • JSON Lines • NDJ
NDJSON • MediaType application/x-ndjson • ֦ுࢠ .ndjson • CRվߦͱͯ͠ݟͳ͢
LDJSON • NDJSONͷաڈͷݺͼ໊ • MediaType application/x-ldjson • ֦ுࢠ .ldjson
JSON Lines • MediaType ಛʹݴٴͳ͠ • ֦ுࢠ .jsonl • ѹॖͯ͠
.jsonl.gz .jsonl.bz2 ͱͯ͠৴ ͢Δ͜ͱਪͯ͠Δ • CRվߦͱͯ͠ݟͳ͞ͳ͍
NDJ • MediaType ಛʹݴٴͳ͠ • ֦ுࢠ .ndj • ࠷ॳͷ1ߦʹ //
Ͱίϝϯτ͕ॻ͚Δ • CRվߦͱͯ͠ݟͳ͞ͳ͍
·ͱΊ
·ͱΊ • վߦ۠ΓͷJSONͩͱฒߦॲཧͱ͔͕ḿΔ • վߦ۠ΓͷJSON͍͔ͭ͘ϑΥʔϚοτ͕ ͋Δ • ॻ͖ํͷ༷େମಉ͡
[EOF]
ࢀߟURL • NDJSON • http://specs.okfnlabs.org/ndjson/ • LDJSON • https://github.com/ndjson/ndjson-spec/commit/ c658c26ba15bea718228b5a3d54f0d4db22ec0ba
• JSON Lines • http://jsonlines.org/ • NDJ • http://jimbojw.com/t/index.php?title=Newline_delimited_JSON