CSV to JSON మార్పిడి అంటే ఏమిటి?
CSV (Comma-Separated Values, RFC 4180) సమతలమైన, పట్టిక వచన ఫార్మాట్; JSON (JavaScript Object Notation, RFC 8259) నిర్మాణాత్మక డేటా కోసం చెట్టు-ఆకారంలో ఉన్న వచన ఫార్మాట్. CSV ని JSON కి మార్చడం స్ప్రెడ్షీట్-అనుకూల పట్టికను API-అనుకూల ఆబ్జెక్ట్ల అరేగా మారుస్తుంది — ప్రతి వరుసకు ఒక ఆబ్జెక్ట్, హెడర్ రో కీలు అందిస్తుంది — ఒక్క సెల్ కూడా మళ్ళీ టైప్ చేయకుండా.
CSV to JSON మార్పిడి ఎలా పనిచేస్తుంది?
ప్రతి మార్పిడి మీ బ్రౌజర్లో స్థానికంగా నడుస్తుంది. ఉన్నత-స్థాయి దశలు:
- మీరు ఇన్పుట్ పేన్లో CSV పేస్ట్ చేసి CONVERT నొక్కుతారు; టూల్ టెక్స్ట్ని పార్స్ చేసి ఔట్పుట్ పేన్లో JSON ఆబ్జెక్ట్ల అరే పంపుతుంది.
- ఒక అక్షర-వారీ స్టేట్ మషీన్ (FIELD_START → IN_UNQUOTED_FIELD లేదా IN_QUOTED_FIELD) ఇన్పుట్ను నడుస్తుంది,
""కోటెడ్-కోట్ ఎస్కేప్ను గౌరవిస్తుంది,\r\nమరియు\nరో టెర్మినేటర్లు రెండింటినీ గుర్తిస్తుంది, మరియు ఇంటర్మీడియట్ రిప్రజెంటేషన్గా స్ట్రింగ్ల 2-D అరే ఉత్పత్తి చేస్తుంది. - మొదటి రో హెడర్ అయితే దాని కోశాలు ఆబ్జెక్ట్ కీలు అవుతాయి; లేకపోతే టూల్ సింథెటిక్
field0,field1, … కీలు జనరేట్ చేస్తుంది తద్వారా ప్రతి రో ఒక పూర్తి ఆబ్జెక్ట్కు మ్యాప్ అవుతుంది. - డిలిమిటర్ (కామా, సెమికోలన్, ట్యాబ్, పైప్, లేదా ఆటో-డిటెక్ట్) మరియు టైప్ కోయర్షన్ (సంఖ్యలు / బూలియన్లు /
null) కాన్ఫిగర్ చేయదగినవి. కోయర్షన్ ఆన్తో30సంఖ్య 30 అవుతుంది మరియుtrueబూలియన్ అవుతుంది; ఆఫ్తో ప్రతి సెల్ స్ట్రింగ్గా ఉంటుంది. - ఔట్పుట్ రీడ్-ఓన్లీ టెక్స్ట్ఏరియాలో
JSON.stringify-ఫార్మాట్డ్ టెక్స్ట్గా వ్రాయబడుతుంది, మరియు డౌన్లోడ్ లింక్application/json;charset=utf-8MIME టైప్తోBlobనిర్మిస్తుంది కాబట్టి మీరు ఒక క్లిక్తో ఫలితాన్ని సేవ్ చేయవచ్చు.
ఈ టూల్తో CSV ని JSON కి ఎందుకు మార్చాలి?
- గోప్యత: ప్రతి పార్స్ మరియు ట్రాన్స్ఫార్మ్ పాస్ మీ బ్రౌజర్లో జరుగుతుంది. డేటా మా సర్వర్లకు చేరదు.
- సరిగ్గా: CSV పార్సర్ నిజమైన స్టేట్ మషీన్. కోటెడ్ కామాలు కలిగిన ఫీల్డ్లు (
"Bob, Jr."), పొందుపరిచిన న్యూలైన్లు, మరియు తప్పించుకున్న కోట్లు మూడుకు బదులు ఒక సెల్కు పార్స్ అవుతాయి — అమాయకsplit(',')అమలులు దీన్ని తప్పు చేస్తాయి. - టైప్ నిష్ఠ: ఐచ్ఛిక కోయర్షన్ సంఖ్యాత్మక మరియు బూలియన్ సెల్లను నిజమైన JSON సంఖ్యలు మరియు బూలియన్లుగా మారుస్తుంది, కాబట్టి మీరు పొందే అరే రెండవ క్లీన్అప్ పాస్ లేకుండా నేరుగా వినియోగానికి సిద్ధంగా ఉంటుంది.
- సౌలభ్యం: నాన్-కామా CSV మాండలికాలకు ఏ డిలిమిటర్నైనా ఎంచుకోండి, మొదటి రో హెడర్ అవునా కాదా నిర్ణయించుకోండి, మరియు ప్రతి సెల్ స్ట్రింగ్గా ఉండాల్సిన సందర్భాల కోసం టైప్ కోయర్షన్ టోగుల్ చేయండి.
CSV to JSON మార్పిడి యొక్క సాధారణ అప్లికేషన్లు ఏమిటి?
CSV ని JSON కి పార్స్ చేయడం డేటా వర్క్ మరియు టూలింగ్ అంతటా కనిపిస్తుంది:
- API మాకింగ్: స్ప్రెడ్షీట్ నుండి ఎగుమతి చేసిన CSV ఫిక్చర్ పేస్ట్ చేయడం మరియు మీ లోకల్ సర్వర్ మాక్డ్ ఎండ్పాయింట్గా తిరిగి ఇవ్వగల JSON అరేకి మార్చడం.
- డేటా దిగుమతి: స్ప్రెడ్షీట్ ఎగుమతి (పరిచయాలు, ఇన్వెంటరీ, సర్వే ప్రతిస్పందనలు) ని JSON అరేగా మార్చడం తద్వారా మీ అప్లికేషన్ లేదా స్క్రిప్ట్ CSV పార్సర్ డిపెండెన్సీ లేకుండా ఇటరేట్ చేయగలదు.
- కాన్ఫిగ్ సవరణ: నాన్-టెక్నికల్ సమీక్షకులు స్ప్రెడ్షీట్లో సెల్ బై సెల్ సెట్టింగ్లు లేదా ఫీచర్ ఫ్లాగ్లు సవరించడానికి అనుమతించడం, ఆపై సేవ్ చేసిన CSV ని మీ యాప్ నిజంగా లోడ్ చేసే JSON కి మార్చడం.
CSV to JSON ఉదాహరణ ఎలా కనిపిస్తుంది?
మొదటి లైన్లో name,age, రెండవదానిలో Alice,30, మరియు మూడవదానిలో "Bob, Jr.",25 పేస్ట్ చేసి, కామా డిలిమిటర్, మొదటి రో కీలుగా, మరియు టైప్ కోయర్షన్ ఆన్తో CONVERT నొక్కడం [{"name":"Alice","age":30},{"name":"Bob, Jr.","age":25}] ఉత్పత్తి చేస్తుంది — "Bob, Jr."లోని కోటెడ్ కామా ఒక ఫీల్డ్లోపల ఉంటుంది, మరియు వయసులు నిజమైన JSON సంఖ్యలు అవుతాయి.
ఈ CSV to JSON కన్వర్టర్ పూర్తిగా నా బ్రౌజర్లో నడుస్తుందా?
అవును. ప్రతి పార్స్ మరియు ట్రాన్స్ఫార్మ్ పాస్ మీ బ్రౌజర్ ట్యాబ్లో JavaScript గా స్థానికంగా నడుస్తుంది. టూల్ fetch, XMLHttpRequest, లేదా navigator.sendBeacon పిలవదు — మీ CSV పేలోడ్లు మా సర్వర్లకు, థర్డ్-పార్టీ కన్వర్టర్కు, లేదా ఏ అనలిటిక్స్ పైప్లైన్కు చేరవు. పేజీ లోడ్ అయిన తర్వాత టూల్ ఆఫ్లైన్లో కూడా పని చేస్తుంది, ఎందుకంటే ఇది రన్టైమ్ API డిపెండెన్సీ లేని స్టాటిక్ HTML/CSS/JS బండిల్.
ఈ కన్వర్టర్ నిర్వహించగల గరిష్ట ఇన్పుట్ పరిమాణం ఏమిటి?
కన్వర్టర్ మొత్తం ఇన్పుట్ను మెమరీలో బఫర్ చేస్తుంది మరియు మెయిన్ థ్రెడ్లో సింక్రోనస్గా నడుస్తుంది, కాబట్టి ఆచరణాత్మక పరిమితులు మీ డివైస్పై ఆధారపడి ఉంటాయి. సుమారు 10 MB CSV (సుమారు 100,000 సాధారణ రోలు) వరకు ఇన్పుట్లు ఆధునిక ల్యాప్టాప్లో గుర్తించదగిన పాజ్ లేకుండా మార్చబడతాయి. దానికి మించి UI పార్సర్ నడుస్తున్నప్పుడు స్తబ్ధుగా ఉండవచ్చు. Web Worker ఉపయోగించి స్ట్రీమ్డ్ కన్వర్షన్ ప్లాన్ చేసిన ఫాలో-అప్ — ప్రస్తుతానికి, చాలా పెద్ద డేటాసెట్లను పేస్ట్ చేయడానికి ముందు విభజించండి.
CSV to JSON పార్సర్ కోటెడ్ కామాలు మరియు పొందుపరిచిన న్యూలైన్లను ఎలా నిర్వహిస్తుంది?
పార్సర్ మూడు స్టేట్లతో (FIELD_START, IN_UNQUOTED_FIELD, IN_QUOTED_FIELD) అక్షర-వారీ స్టేట్ మషీన్ — అమాయక split(',') కాదు. డబుల్ కోట్లలో చుట్టిన ఫీల్డ్ ఫీల్డ్ బౌండరీలు విచ్ఛిన్నం చేయకుండా డిలిమిటర్, CR, LF, లేదా "" గా తప్పించుకున్న లిటరల్ డబుల్ కోట్ కలిగి ఉండవచ్చు. కాబట్టి "Bob, Jr.",25 మూడు కాదు రెండు ఫీల్డ్లకు పార్స్ అవుతుంది, మరియు రోల అంతటా కోట్ చేయబడిన మల్టి-లైన్ వివరణ ఒక సెల్కు పార్స్ అవుతుంది.
JSON ఔట్పుట్లో సంఖ్యలు, బూలియన్లు మరియు ఖాళీ సెల్లు ఎలా టైప్ చేయబడతాయి?
టైపింగ్ టైప్ కోయర్షన్ టోగుల్ ద్వారా నియంత్రించబడుతుంది. కోయర్షన్ ఆన్ (డిఫాల్ట్)తో, సంఖ్య లాగా కనిపించే సెల్ JSON సంఖ్య అవుతుంది, true/false బూలియన్లు అవుతాయి, మరియు లిటరల్ null JSON null అవుతుంది; మిగతా అన్నీ స్ట్రింగ్గా ఉంటాయి. కోయర్షన్ ఆఫ్తో, సామగ్రి ఏదైనా ప్రతి విలువ స్ట్రింగ్గా ఉంటుంది — లీడింగ్ జీరోలు, ఫోన్ నంబర్లు, లేదా ID కోడ్లు సరిగ్గా ఉండాల్సిన అవసరమున్నప్పుడు ఉపయోగకరం. చిన్న రోల్లో ట్రెయిలింగ్ ఖాళీ సెల్లు ఖాళీ స్ట్రింగ్లుగా పంపబడతాయి తద్వారా ప్రతి ఆబ్జెక్ట్కు పూర్తి కీ-సెట్ ఉంటుంది.
CSV వైపు ఏ డిలిమిటర్లు సపోర్ట్ చేయబడతాయి?
నాలుగు స్పష్టమైన డిలిమిటర్లు సపోర్ట్ చేయబడతాయి: కామా (,, RFC 4180 డిఫాల్ట్), సెమికోలన్ (;, యూరోపియన్ లొకేళ్ళలో సాధారణం), ట్యాబ్ (\t, TSV మాండలికం), మరియు పైప్ (|). మీరు ఆటో-డిటెక్ట్ కూడా ఎంచుకోవచ్చు, ఇది కోటెడ్ ప్రాంతాల వెలుపల ఇన్పుట్ యొక్క మొదటి 4 KB లో ప్రతి అభ్యర్థి యొక్క సంఘటనలను లెక్కిస్తుంది మరియు మొదటి ఐదు రోల అంతటా స్థిరమైన కాలమ్ కౌంట్ ఉత్పత్తి చేసే అత్యంత తరచుగా వచ్చేదాన్ని ఎంచుకుంటుంది.
ఈ CSV to JSON కన్వర్టర్ నిజమైన స్టేట్ మషీన్తో పార్స్ చేస్తుంది మరియు స్వచ్ఛమైన, వినియోగ-సిద్ధ JSON ఉత్పత్తి చేస్తుంది, ఒక్క బైట్ అప్లోడ్ చేయకుండా మీరు నేరుగా API కాల్లో, స్క్రిప్ట్లో, లేదా కోడ్ రివ్యూలో పేస్ట్ చేయవచ్చు.