تبدیل CSV به JSON

روی دستگاه شما اجرا می‌شود · فایل شما از دستگاهتان خارج نمی‌شود.

خروجی .csv را رها کنید یا متن را بچسبانید و یک فهرست JSON بگیرید: هر سطر یک شیء، با سطر عنوان به‌عنوان کلیدها. تجزیه‌گر از RFC 4180 پیروی می‌کند، پس فیلدهای نقل‌قول‌شده، گیومه‌های دوتایی، و ویرگول یا خط جدید داخل سلول همه سالم می‌مانند.

جداکنندهٔ ستون به‌طور خودکار از بین ویرگول، نقطه‌ویرگول، تب و خط عمودی تشخیص داده می‌شود (خروجی‌های اکسل فارسی که نقطه‌ویرگول دارند بدون هیچ تنظیمی کار می‌کنند) و می‌توانید خودتان هم انتخابش کنید. به‌طور پیش‌فرض "12" عدد ۱۲ می‌شود، "true" بولی و سلول خالی null، اما فقط جایی که چیزی عوض نشود: 1.50، 1e3، 007 و شناسه‌های بلند متن می‌مانند، چون به‌صورت عدد جور دیگری بازنوشته می‌شدند. این گزینه را خاموش کنید تا هر مقدار دقیقاً همان متن بماند.

عنوان‌های تکراری یا خالی نام یکتا می‌گیرند (column_3)، نشانگر BOM حذف می‌شود، فایلی که با UTF-16 یا یک کدپیج قدیمی ذخیره شده به همان صورت خوانده و نامش گفته می‌شود، سطرهایی که از عنوان سلول بیشتری دارند با شمارهٔ خطشان گزارش می‌شوند، و خطای تجزیه با شمارهٔ خط و ستون گزارش می‌شود، نه با پیامی مبهم. پیش‌نمایش ۲۰۰ خط اول را پیش از دانلود نشان می‌دهد.

راهنمای تبدیل CSV به JSON

  1. فایل CSV را رها کنید یا متن CSV را در کادر بچسبانید.
  2. جداکننده را روی خودکار بگذارید یا انتخاب کنید؛ تصمیم بگیرید عددها و بولی‌ها نوع بگیرند یا نه.
  3. روی «تبدیل به JSON» بزنید و پیش‌نمایش را ببینید.
  4. فایل .json را دانلود کنید.

قالب‌های پشتیبانی‌شده و محدودیت‌ها

ورودی
CSV / TSV (.csv، .tsv، .txt)؛ فایل یا متن چسبانده‌شده
خروجی
آرایهٔ JSON از اشیا، مرتب‌شده، UTF-8
تجزیه
RFC 4180: گیومه‌ها، جداکننده و خط جدید داخل سلول
جداکننده
تشخیص خودکار: ویرگول، نقطه‌ویرگول، تب، خط عمودی
محل اجرا
در مرورگر – بدون آپلود

مناسب نیست برای: بازسازی ساختار تودرتو: CSV تخت است، پس هر سطر یک شیء تخت می‌شود؛ ستون‌های نقطه‌دار دوباره تودرتو نمی‌شوند.

تشخیص نوع دقیقاً چه چیزی را تغییر می‌دهد

با روشن بودن گزینه، خانه‌ای فقط وقتی عدد می‌شود که آن عدد به همان متن بازنوشته شود: 12، -4 و 3.5 عدد می‌شوند. 1.50، 1e3 و -0 متن می‌مانند، چون به‌صورت عدد به شکل 1.5، 1000 و 0 برمی‌گشتند. همین‌طور 007، +5، " 12"، 3,5، 1,250، مقداری با علامت درصد یا واحد پول، و شناسه‌ای بلندتر از آنچه یک عدد دقیقاً نگه می‌دارد.

true و false با هر ترکیبی از حروف بزرگ و کوچک شناخته می‌شوند، پس TRUE به true تبدیل می‌شود. خانهٔ خالی null می‌شود، اما کلمهٔ NULL متن می‌ماند، چون ممکن است خودش یک مقدار یا یک نام باشد. تاریخ‌هایی مثل 2024-01-05 همیشه متن می‌مانند.

سطرهایی کوتاه‌تر یا بلندتر از سطر عنوان

خانه‌ها بر اساس جایگاهشان با عنوان‌ها جفت می‌شوند. سطری که خانهٔ کمتری دارد برای ستون‌های جاافتاده null می‌گیرد (با خاموش بودن تشخیص، رشتهٔ خالی). سطری که از عنوان خانهٔ بیشتری دارد جایی برای خانه‌های اضافه ندارد؛ پس آن‌ها کنار گذاشته می‌شوند و پیامی بالای پیش‌نمایش می‌گوید این برای چند سطر پیش آمده و نخستینشان از کدام خط شروع می‌شود. معمولاً یعنی مقداری مثل Smith, John جداکننده را بدون گیومه در خود دارد.

سطرهای خالی رد می‌شوند. فاصله‌های دو طرف نام عنوان‌ها حذف می‌شود، اما فاصله‌های مقدارها نه؛ پس " Tehran" فاصله‌اش را نگه می‌دارد.

گیومه‌ها چطور خوانده می‌شوند و خطا به کجا اشاره می‌کند

گیومه فقط وقتی فیلدی نقل‌قول‌شده را شروع می‌کند که نخستین نویسهٔ آن فیلد باشد؛ در میانه، مثل 5" screen، جزو متن می‌ماند. گیومه‌ای که فیلدی را باز کند و هرگز بسته نشود بقیهٔ فایل را به درون یک خانه می‌کشید؛ پس تبدیل متوقف می‌شود و خط و ستونی را می‌گوید که آن گیومه در آن باز شده است.

تشخیص جداکننده و کدگذاری فایل

تشخیص به ۶۴ کیلوبایت اول، حداکثر ۵۰ خط، نگاه می‌کند و جداکننده‌ای را برمی‌گزیند که در بیشترین خط‌ها تعداد ستون یکسانی بدهد؛ جداکننده‌های درون گیومه شمرده نمی‌شوند. در فایلی با نقطه‌ویرگول و اعشار ویرگولی، مثل A;1,5، نقطه‌ویرگول پیدا می‌شود و 1,5 متن می‌ماند.

فایل بر اساس آنچه بایت‌هایش هستند خوانده می‌شود: نشانگر BOM، UTF-16 (که اکسل با نام «Unicode Text» می‌نویسد) یا UTF-8. وقتی بایت‌ها UTF-8 معتبر نباشند، کدپیج قدیمی‌ای به کار می‌رود که آن‌ها را به کلمه تبدیل کند: کدپیج‌های ویندوز برای متن اروپای غربی و مرکزی، سیریلیک، یونانی، ترکی، عبری، عربی (همراه فارسی و اردو) و تایلندی، یا GB18030، Big5، Shift_JIS و EUC-KR برای چینی، ژاپنی و کره‌ای. آنگاه سطر فایل این را می‌گوید، مثلاً «با windows-1256 خوانده شد، نه UTF-8»؛ فایل خیلی کوتاه حروف کمی برای قضاوت دارد، پس پیش‌نمایشش را بررسی کنید.

پرسش‌های متداول

با عددها، بولی‌ها و سلول‌های خالی چه می‌شود؟
با روشن بودن «تشخیص اعداد، مقادیر منطقی و خانه‌های خالی»، 12 و 3.5 عدد می‌شوند، true/false بولی و سلول خالی null. مقداری فقط وقتی عدد می‌شود که دقیقاً همان‌طور بازنوشته شود؛ پس 1.50، 1e3، صفر اول (007) و شناسه‌های بلند متن می‌مانند و چیزی بی‌صدا عوض نمی‌شود. گزینه را خاموش کنید تا همهٔ مقادیر متن بمانند.
آیا فایل من به سرور فرستاده می‌شود؟
نه. تبدیل به‌طور کامل در مرورگر و با توان دستگاه خودتان انجام می‌شود و فایل از رایانه یا گوشی شما بیرون نمی‌رود. هر ابزار پس از یک بار استفاده، بدون اینترنت هم کار می‌کند (ابزارهای ویدیو، تشخیص متن و حذف پس‌زمینه بار اول موتورشان را از همین سایت می‌گیرند).
فایلم نقطه‌ویرگول یا تب دارد؛ باید کاری بکنم؟
نه. جداکننده از خط‌های اول فایل تشخیص داده می‌شود. اگر حدس اشتباه بود، جداکننده را از فهرست انتخاب کنید.
اگر سلولی ویرگول یا خط جدید داشته باشد؟
نقل‌قول برای همین است و تجزیه‌گر دقیقاً طبق استاندارد عمل می‌کند: فیلدی که در گیومه است می‌تواند جداکننده، خط جدید و گیومهٔ دوتایی داشته باشد.

ابزارهای مرتبط

بیشتر در صفحه‌گسترده و داده

این صفحه به زبان‌های دیگر: English · العربية · Deutsch · Français · Español · Русский · Português · 中文 · हिन्दी · Türkçe · עברית · اردو · Bahasa Indonesia · বাংলা