CSV سے JSON کنورٹر

استعمال کا طریقہ 3 مراحل
  1. اپنا CSV چسپاں کریں اور جداکار دیکھ لیں۔
  2. آؤٹ پٹ کی شکل اور ہیڈر اور تراشنے کے اختیارات چنیں۔
  3. تبدیل کریں دبائیں، پھر کاپی کریں یا JSON ڈاؤن لوڈ کریں۔
اقتباس والے خانے، اندر آنے والے کوما اور اقتباسات کے اندر سطر توڑ، سب سنبھال لیے جاتے ہیں۔
JSON

پارسر RFC 4180 کی پیروی کرتا ہے: اقتباسی خانے کے اندر دہرا واوین ایک عام واوین شمار ہوتا ہے، اور واوین کے اندر سطر کا وقفہ قدر ہی کا حصہ رہتا ہے۔ حد فاصل کی پہچان اُس امیدوار کو چنتی ہے جو ابتدائی چند سطروں میں کالموں کی سب سے یکساں تعداد دے۔ قسم کی تبدیلی اقتباسی خانوں کو کبھی نہیں چھوتی، اس لیے "01234" کی طرح لکھا ہوا پوسٹ کوڈ اپنا ابتدائی صفر برقرار رکھتا ہے۔

یہ ٹول کیسے کام کرتا ہے

پارسر کوما پر توڑنے کے بجائے CSV کے اصول کی صحیح پیروی کرتا ہے: واوین میں لپٹا ہوا خانہ جدا کنندہ، سطری ٹوٹیں اور دوہرے واوین رکھ سکتا ہے، اور تینوں بچ جاتے ہیں۔ یہی فرق ہے جس کی وجہ سے سادہ تقسیم پہلے ہی پتے والے خانے پر ناکام ہو جاتی ہے، اور یہی وہ سب سے عام وجہ ہے کہ CSV کی تبدیلی غلط تعداد میں کالم دیتی ہے۔

جدا کنندہ اس طرح پہچانا جاتا ہے کہ کوما، سیمی کولن، ٹیب اور پائپ آزمائے جاتے ہیں، ہر ایک سے پہلی سطریں پارس کی جاتی ہیں، اور وہی رکھا جاتا ہے جو کالموں کی سب سے ہم آہنگ تعداد دے — اور یہی چیز سیمی کولن والی یورپی روایت کو پوچھے بغیر سنبھال لیتی ہے۔ قدروں کو ان کی قسم میں ڈھالا جا سکتا ہے، تو اعداد اور بولین سٹرنگ کے بجائے اعداد اور بولین کی صورت میں آتے ہیں، اور واوین والا خانہ سٹرنگ ہی رہنے دیا جاتا ہے کیونکہ اسے واوین میں رکھنا ایک ارادے کا اظہار تھا۔

CSV فائلیں کہاں بگڑتی ہیں

  • بند نہ کیا گیا واوین باقی پوری فائل نگل جاتا ہے: پارسر خاموشی سے ناکام ہونے کے بجائے اس کی اطلاع دیتا ہے، کیونکہ ورنہ علامت صرف ایک بے پناہ بڑی آخری قدر ہوتی ہے اور کوئی واضح وجہ نہیں۔
  • آگے لگے صفر قسم میں ڈھالنے کا کلاسیکی شکار ہیں: کوئی پوسٹ کوڈ یا شناخت کنندہ جیسے 01234 عدد بن کر 1234 ہو جاتا ہے۔ ان خانوں کو سورس میں واوین میں رکھیں، یا ڈھالنا بند کر دیں۔
  • ایک جیسی سرخیاں ٹکرا جاتی ہیں: ایک ہی نام والے دو کالم نتیجے میں ایک کلید بناتے ہیں۔ بدلنے سے پہلے انہیں سورس میں نیا نام دیں۔
  • CSV میں انکوڈنگ کا کوئی اعلان نہیں: Latin-1 میں محفوظ کی گئی فائل کو UTF-8 سمجھ کر پڑھنے سے اعراب بگڑ جاتے ہیں، اور اس صورت میں کچھ نہیں بتاتا کہ وہ کون سی ہے۔ اسے برآمد کے وقت درست کریں۔

Why a naive comma split fails on the first address field

A properly quoted CSV field can legally contain the delimiter, a line break, and doubled quote marks, and all three have to survive intact through the conversion. The [msm_tool slug="csv-to-json"] follows that convention rather than splitting on every comma it sees, which is the difference between handling a quoted address correctly and having it fracture into extra columns the moment a comma appears inside it.

The delimiter is detected, not assumed

Comma, semicolon, tab and pipe are each tried against the first rows of the file, and whichever produces the most consistent column count across those rows is the one used for the whole conversion. That is what makes a semicolon-delimited European export load correctly without anyone having to say in advance which character the file actually uses.

Leading zeros are the classic casualty of type coercion

Values are coerced where they look like numbers or booleans, so a genuine number arrives as one instead of as text — useful almost everywhere except an identifier like a postcode that happens to start with a zero, which becomes a shorter number with the leading digit gone. Quoting that field in the source file, or turning coercion off entirely, is what keeps it as the text it actually is.

Duplicate column headers collapse into one key

An object cannot hold the same key twice, so two source columns sharing a header name end up as a single key in the output, with one value overwriting the other. Renaming the columns in the source before converting is the only fix, since nothing in the conversion itself can recover data that collided on the way in.

An unclosed quote swallows everything after it

A quote mark opened but never closed does not fail quietly — without the fix, everything from that point to the end of the file would be read as a single enormous value with no obvious cause. The parser reports the unclosed quote directly instead, which is considerably faster to act on than reverse-engineering one huge field back to the row where it went wrong.

CSV carries no encoding of its own

Nothing in the format states what character encoding a file was saved in, so a file written as Latin-1 and read as UTF-8 produces mangled accented characters with no signal anywhere in the file explaining why. That mismatch has to be fixed at the point the file is exported, since there is nothing in the CSV itself for a converter to detect and correct.

اکثر پوچھے گئے سوالات

خاص طور پر CSV سے JSON کنورٹر کے بارے میں۔ اس زمرے سے متعلق عمومی سوالات کے جواب زمرے کے صفحے پر موجود ہیں۔

ایسا نہیں ہونا چاہیے — کوما رکھنے والے واوین والے خانے سنبھال لیے جاتے ہیں۔ اگر ایسا ہو رہا ہے تو غالباً وہ خانہ سورس فائل میں واوین میں نہیں ہے۔
قسم میں ڈھالنے نے اسے عدد سمجھا۔ اس خانے کو سورس میں واوین میں رکھیں، جو اسے عبارت قرار دیتا ہے، یا ڈھالنا بند کر دیں۔
یہ ہر عام جدا کنندہ آزماتا ہے اور وہی رکھتا ہے جو کالموں کی سب سے ہم آہنگ تعداد دے، جس سے یورپی روایت خود بخود سنبھل جاتی ہے۔
وہ ایک کلید میں سمٹ جاتے ہیں، کیونکہ کوئی آبجیکٹ ایک ہی کلید دو بار نہیں رکھ سکتا۔ پہلے انہیں سورس میں نیا نام دیں۔
فائل تقریباً یقیناً اس انکوڈنگ سے مختلف انکوڈنگ میں محفوظ کی گئی جس میں اسے پڑھا جا رہا ہے۔ CSV کوئی انکوڈنگ کا اعلان نہیں رکھتی، اس لیے یہ برآمد کے وقت ہی ٹھیک کرنا ہوگا۔

نئے ٹولز، خصوصیات اور کارکردگی بڑھانے کے مشوروں کی اطلاع پانے کے لیے سبسکرائب کریں۔