కామా-సపరేటెడ్-వేల్యూస్

వికీపీడియా నుండి
ఇక్కడికి గెంతు: మార్గసూచీ, వెతుకు
Comma separated list
Comma-separated values
తెరపట్టు CsvDelimited001.svg
పేరు Comma separated list
Comma-separated values
పొడిగింపు .csv or .txt
అంతర్జాలమాధ్యమ రకం text/csv
వీటిని కలిగివుంటుంది database information organized as field separated lists
ప్రమాణం RFC 4180

కామా-సపరేటెడ్-వేల్యూ (csv )ఫైల్ అనేది డేటాబేస్ టేబుల్ కొరకు ఒక సాధారణమైన టెక్స్ట్ ఫార్మాట్. టేబుల్ లో ప్రతి రికార్డ్, టెక్స్ట్ ఫైల్ లో ఒక వరుసగా ఉంటుంది. రికార్డ్ లోని ప్రతి ఫీల్డ్ విలువ తరువాతి విలువతో ఒక కామా ద్వారా వేరు చేయబడుతుంది. ఆచరణలో CSV అంతర్గత లైన్ బ్రేకులు, వేరుచేసే అక్షరాల సహాయంతో, కొటేషన్ మార్కులు ఎస్కేప్ సీక్వెన్స్ లను ఉపయోగించి ఫీల్డ్ వేల్యూస్ ను చూపిస్తాయి. CSV విరివిగా వాడబడే ఫైల్ ఫార్మాట్. అందువల్ల ఈ ఫైల్ ఫార్మాట్ ని ఉపయోగించే వివిధ కంప్యూటర్ ప్రోగ్రాంల మధ్య సమాచార పట్టికలను సరఫరా చేయడానికి దీనిని తరచుగా ఉపయోగిస్తారు. ఉదాహరణకు ఒక డేటాబేస్ ప్రోగ్రాం నుంచి స్ప్రెడ్ షీట్ కు సమాచారాన్ని చేరవేయడానికి CSV ఫైల్ ను వాడవచ్చు.

సాంకేతిక పరిజ్ఞాన నేపధ్యం[మార్చు]

కంప్యూటర్ లో నిల్వ చెయ్యడానికి ఫైల్ ఫార్మాట్ అనేది ఒక ప్రత్యేకమైన పద్ధతి. ముఖ్యంగా CSV ఫార్మాట్ ఫైళ్లును సమాచార పట్టికలను నిల్వ చెయ్యడానికి ఉపయోగిస్తారు. వాణిజ్య రంగంలో కంపూటర్ల వాడకం మొదలైన తొలి రోజుల నుంచే ఈ ఫైల్ ఫార్మాట్ వాడుకలో ఉంది మరియు రకరకాల నిడివి గల పదాలు, వివిధ డేటా ఫార్మాటింగ్ అవసరాలు గల కంపూటర్ల నడుమ సమాచారాన్ని చేరవేయడానికి దీనిని ఎక్కువగా ఉపయోగిస్తారు. ఈ కారణంగా, CSV ఫైళ్లు అన్ని కంప్యూటర్ ప్లాట్ ఫారంలలోనూ సాధారణంగా ఉంటాయి.

CSV, విలువలను వేరు చెయ్యడానికి కామాలను ఉపయోగించే, కొన్ని పరిధులకు లోబడిన టెక్స్ట్ ఫైల్ (వాడుకలో ఉన్న చాలా CSV దిగుమతి/ఎగుమతి టూల్స్ కొన్ని ఇతర సెపరేటర్లను కూడా వాడటానికి అనుమతిస్తాయి). సాధారణమైన CSV ఆచరణలు కామా లేక న్యూ లైన్ వంటి మరొక సెపరేటర్ ను కలిగియున్న ఫీల్డ్ విలువలను అనుమతించవు. మరింత అధునాతనమైన CSV ఆచరణలు కామాలు మరియు ఇతర ప్రత్యేక అక్షరాలను ఫీల్డ్ విలువల్లో అనుమతిస్తాయి. ఎక్కువ ఆచరణలు, కొన్ని రిజర్వు చేయబడిన (కామా, డబుల్ కోట్, న్యూ లైన్ వంటి) అక్షరాలను "(డబుల్ కోట్)సంజ్ఞల నడుమ వాడటానికి అనుమతిస్తాయి; కూర్చబడిన డబుల్ కోట్ సంజ్ఞలు, ఒక జత వరుస డబుల్ కోట్ సంజ్ఞల ద్వారా సూచింపబడతాయి. (Creativyst 2010)కొన్ని CSV ఆచరణలు, రిజర్వు చేయబడిన ఎస్కేప్ పరంపరలను బాక్ స్లాష్ వంటి ఎస్కేప్ కేరక్టర్లను ఉపయోగించి కోడ్ చేస్తాయి.

కంపూటర్ శాస్త్ర పరిభాషలో CSV ఫైల్ ఒక "చదునైన ఫైల్".

చరిత్ర[మార్చు]

కామా-సేపరేటెడ్ వేల్యూస్ పర్సనల్ కంపూటర్ల వాడకం కంటే ఒక దశాబ్దం ముందు నుంచే ఉన్న ఒక పాత పధ్ధతి. IBM ఫోర్ట్రాన్ (లెవెల్ G) కంపైలర్ OS/360 వీటిని 1967 లోనే అనుమతించింది. కామా-సేపరేటెడ్ వేల్యూలు తరచుగా నిర్ణీత వరుసలలో పేర్చబడిన డేటాలో కంటే పంచ్ కార్డుల లోనికి టైపు చెయ్యడానికి సులువుగా ఉంటాయి మరియు వాటి కొరకు ఉద్దేశించిన స్థానం కంటే ఒక వరుస దూరంగా పంచ్ అయినా తప్పుడు ఫలితాలను చూపించే ప్రమాదం లేదు.

కామా సెపరేటెడ్ లిస్టు (CSL) సాధారణమైన కంపూటర్లు వాడే పాత రోజులలో కామా-సేపరేటెడ్ వేల్యూస్(CSV) గా పిలువబడే ఒక డేటా ఫార్మాట్. పర్సనల్ కంపూటర్ల (అప్పట్లో 'హోం కంపూటర్లు' గా పిలువబడేవి) పరిశ్రమలో బాయిలర్ ప్లేట్ అక్షరాలను, మెయిలింగ్ లిస్టులను ఉపయోగించి అభ్యర్థనలను ఉత్పత్తి చేసే వ్యాపారాలు అత్యంత సాధారణం.

వర్డ్ ప్రాసెసర్ల వంటి కొన్ని మొదటి తరానికి చెందిన సాఫ్ట్ వేర్ అప్లికేషన్లు "వేరియబుల్ డేటా" ప్రవాహాలను ఒక ఫైల్ నుంచి మరొక ఫైల్ లోనికి అనుసంధానం చేయడానికి అనుమతించేవి. ఉదా: ఉత్తరాలు, పేర్లు గల కొన్ని CSL లు, చిరునామాలు, మరియు ఇతర సమాచారం. చాల అప్లికేషన్లు ఇప్పటికీ అదే విధంగా పని చేస్తున్నాయి. ఎందుకంటే కంప్యూటర్ ద్వారా కాక చేతితో తయారు చేసే లిస్టులలో కామాలను వాడటం చాలా సులువు. CSL/CSV లను సాధారణ డేటాబేస్ లలో కూడా వాడతారు.

నిర్ధారణ[మార్చు]

నేపథ్యం[మార్చు]

కామా-సేపరేటెడ్ లిస్టులు మొట్టమొదటి పర్సనల్ కంపూటర్ల కంటే కూడా మునుపటివి. కాని IBM-PC శకానికి ముందు నాటి పర్సనల్ కంపూటర్లలో టేప్ లో నిల్వ చేసే బాక్అప్ కొరకు, మరియు రెండు వేర్వేరు నిర్మాణ(ఆర్కిటెక్చర్) రీతులకు చెందిన కంపూటర్ల నడుమ డాటాబేస్ సమాచారం సరఫరా కొరకు విరివిగా వాడబడేవి. ఆ రోజులలో హార్డ్ డ్రైవ్ లు అందుబాటు ధరల్లో లేకపోవటం వలన ఎన్నో చిన్న వ్యాపార సంస్థలు ఫ్లాపీ డిస్క్ ఆధారిత సాఫ్ట్ వేర్ లను ఉపయోగించి కంపూటర్లను వాడేందుకు ప్రయత్నించాయి.[citation needed]

CSV కొరకు ఒక ప్రామాణికమైన నిర్ధారణ ఏదీ లేదు. వివిధ ప్రోగ్రాంలలోని CSV ఆచరణ విధానాల్లో తేడాలు అత్యంత సాధారణం. అందువల్ల ఇవి కలసి పనిచెయ్యడం కొన్ని సమస్యలకు దారి తీస్తుంది. ఇంటర్నెట్ లో CSV ఫైళ్ల ద్వారా సమాచారం అందించేందుకు, ఒక సమాచారాత్మకమైన IETF డాక్యుమెంట్ (అక్టోబర్ 2005 నుంచి RFC 4180)IANA తో రిజిస్టర్ చేయబడిన "text/CSV )MIME రకానికి చెందిన ఫార్మాట్ ను వివరిస్తుంది.(Shafranovich 2005)ఫీల్డెడ్ టెక్స్ట్ ద్వారా దీనికి సంబంధించి CSV ఫార్మాట్ తో కూడా కలసిన మరొక నిర్ధారణ లభిస్తుంది.

CSV ఫార్మాట్మూస:Harvtxt ను వివరించే ఎన్నో అనధికార డాక్యుమెంట్లు ఎక్కువగా వాడే CSV ఫార్మాట్ గురించి ఒక పరిశీలనను అందిస్తాయి, మరియు మరింత సమర్థవంతంగా, ఉత్తమంగా దానిని ఎలా ఉపయోగించవచ్చో తెలియజేస్తాయి.

ప్రాథమిక నియమాలు[మార్చు]

ఈ విధమైన ఎన్నో నిర్ధారణల నుంచి ప్రాథమిక నియమాలు ఈ క్రింది విధంగా ఉంటాయి.

CSV అనునది కామాలతో వేరు చేయబడిన ఫీల్డ్స్/కాలమ్స్, న్యూ లైన్ల ద్వారా వేరు చేయబడిన రికార్డులు/అడ్డువరుసలు కలిగి డి లిమిట్ చేయబడిన ఒక డేటా ఫార్మాట్. ప్రత్యేక సంజ్ఞలు (కామా, న్యూ లైన్, లేక డబుల్ కోట్)లు కలిగిన ఫీల్డులను తప్పనిసరిగా డబుల్ కోట్స్ లో ఉంచాలి. ఒక లైన్లో ఖాళి స్త్రింగ్ తో కూడిన ఒకే ఒక ఎంట్రీ ఉంటే దానిని డబుల్ కోట్స్ లో ఉంచవచ్చు. ఫీల్డ్ విలువలో డబుల్ కోట్ క్యారెక్టర్ ఉంటే మరొక డబుల్ కోట్ క్యారెక్టర్ ను దాని తరువాత ఉంచడం ద్వారా దానిని తప్పించవచ్చు. CSV ఫైల్ ఫార్మాట్ లో ప్రత్యేకమైన క్యారెక్టర్ కోడ్ గాని, బైట్ ఆర్డర్ గాని, లైన్ చివరను సూచించడం గాని అవసరం లేదు.

సూచన: బైనరీ డేటా నిషిద్ధం కానప్పటికీ, రిజర్వు చేయబడిన CSV క్యారెక్టర్లు (కామా, న్యూ లైన్,డబుల్ కోట్) బైనరీ డేటాలో తరచు వస్తుండటం వలన, మరియు వీటిని తప్పించే, లేక మరొక విధంగా చూపించే విధానం లేకపోవటం వలన సమస్యాత్మకం అవుతుంది. సంప్రదాయం ప్రకారం CSV ఫైల్లోని సమాచారం మనం టెక్స్ట్ రూపంలో చదవగలిగినది అయి ఉంటుంది, అందువలన బైనరీ నంబర్లు ఫైల్ లో కలపడానికి ముందు ASCII స్త్రింగ్ రూపంలోకి మార్చబడతాయి . ఉదా: బైనరీ (హెక్సాడెసిమల్ రూపంలో) 0x3FFF (63 విలువ, దాని వెంబడి 255 విలువతో కూడిన రెండు బైట్లు) ASCII రూపంలో 16383గా చూపించబడతాయి.

  • లైన్ ఫీడ్(ASCII/LF=0x0A), లేక క్యారేజ్ రిటర్న్ మరియు లైన్ ఫీడ్ జత (ASCII/CRLF=0x0D 0x0A) ద్వారా ముగించబడిన ప్రతి లైన్ ఒక రికార్డు. ఏది ఏమయినప్పటికీ లైన్ బ్రేక్ లు ఎంబెడ్ చేయబడతాయి.
  • ఫీల్డులు కామాల ద్వారా వేరు చేయబడతాయి (కామాను దశాంశ బిందువుగా వాడే ప్రాంతాలలో డిలిమిటర్ కు బదులుగా సెమికోలన్ వాడుతున్నప్పటికీ, ఈ విధానం అమెరికా ఫ్రాన్స్ ల మధ్య CSV ఫైళ్లు పరస్పరం మార్చుకోవడంలో కొన్ని ప్రతిబంధకాలకు దారి తీస్తుంది.)
1997,Ford,E350
  • కొన్ని CSV ఆచరణ విధానాల్లో కామాలకు ముందు లేక వెనుక ఉండే స్పేస్ లు లేక ట్యాబులు తీసివేయబడతాయి. ఈ విధానం వివాదాస్పదమైనది మరియు ముఖ్యంగా, "స్పేస్ లు కూడా ఫీల్డులో భాగంగానే పరిగణించాలని మరియు వీటిని తీసివేయకూడదని" చెబుతున్న RFC 4180 ద్వారా ఇది నిషేధించబడినది.
1997, Ford , E350
ఈ రెండు ఒకటి కాదు
1997,Ford,E350
  • ఎంబెడ్ చేయబడిన కామాలతో కూడిన ఫీల్డ్ లను తప్పనిసరిగా డబుల్-కోట్ క్యారక్టర్లలో ఉంచాలి.
1997,Ford,E350,"Super, luxurious truck"
  • డబుల్ కోట్ క్యారక్టర్లతో కూడిన ఫీల్డులను మరొక జత డబల్ కోట్ క్యారక్టర్ల లోపల ఉంచాలి, మరియు ప్రతి ఒక్క ఎంబెడ్ చేయబడిన డబల్ కోట్ క్యారక్టర్ ను ఒక జత డబల్ కోట్ క్యారక్టర్ల ద్వారా సూచించాలి.
1997,Ford,E350,"Super ""luxurious"" truck"
  • ఎంబెడ్ చేయబడిన లైన్ బ్రేక్ లతో కూడిన ఫీల్డ్ లను తప్పనిసరిగా డబల్ కోట్ క్యారక్టర్ల లోపల ఉంచాలి.
1997,Ford,E350,"Go get one now

they are going fast"

they are going fast"
  • స్పేస్ లతో మొదలయే లేక అంతమయే ఫీల్డులు డబుల్ కోట్ క్యారక్టర్ల నడుమ ఉంచాలి. (ముందుగా లేక తరువాత వచ్చే కామాల గురించిన వ్యాఖ్యను చూడండి.)
1997,Ford,E350," Super luxurious truck "
  • అవసరం ఉన్నా లేకపోయినా, ఫీల్డులను ఎల్లప్పుడూ డబుల్ కోట్ క్యారక్టర్ల నడుమ ఉంచవచ్చు.
"1997","Ford","E350"
  • CSV ఫైల్లో మొదటి రికార్డ్ ప్రతీ ఫీల్డ్ లోను కాలమ్ ల పేర్లను కలిగి ఉండవచ్చు.
Year,Make,Model
1997,Ford,E350
2000,Mercury,Cougar

ఉదాహరణ[మార్చు]

పై టేబుల్ లోని డేటాను CSV ఫార్మాట్ లో ఈ క్రింది విధంగా సూచించవచ్చు:

Year,Make,Model,Description,Price
1997,Ford,E350,"ac, abs, moon",3000.00
1999,Chevy,"Venture ""Extended Edition""","",4900.00
1999,Chevy,"Venture ""Extended Edition, Very Large""","",5000.00
1996,Jeep,Grand Cherokee,"MUST SELL!
air, moon roof, loaded",4799.00

పై CSV ఉదాహరణ ఈ క్రింది విషయాలను సూచిస్తుంది:

  • కామాలు, డబుల్ కోట్లు లేక లైన్ బ్రేక్ లతో కూడిన ఫీల్డులను తప్పనిసరిగా కోట్ చేయాలి.
  • ఫీల్డు లోపల ఉన్న కోట్ ను దానికి ముందు మరొక అదనపు కోట్ ఉంచడం ద్వారా తప్పించవచ్చు.
  • డిలిమిటర్ కామాలకు ముందు మరియు తరువాత ఉన్న స్పేస్ లను తగ్గించకూడదు . RFC 4180కి ఇది అవసరం.
  • ఒక అంశం లోపల ఉన్న లైన్ బ్రేక్ ను అలాగే ఉంచాలి.

CSV ఫైళ్ల లోపల లైన్ బ్రేక్ నిర్వహణ[మార్చు]

పై ఉదాహరణలో చూపినట్లుగా చాలా అప్లికేషన్లు ఒక సెల్ లోపల లైన్ బ్రేక్ ను ఉంచవని చెప్పటం గమనించదగిన విషయం. అటువంటి అప్లికేషన్లు లైన్ బ్రేక్ ను డిలిమిటర్ గా చూపించి కొత్త సెల్ ను మొదలు పెడతాయి. ఇటువంటి సందర్భంలో CSV ఫైల్ యొక్క స్వరూపం మారిపోతుంది.[1]

అప్లికేషన్ సపోర్ట్[మార్చు]

CSV ఫైల్ ఫార్మాట్ చాలా సాధారణమైనది, మరియు దాదాపు అన్ని స్ప్రెడ్ షీట్లు, డాటాబేస్ నిర్వహణ విధానాలు దీని వాడుకను అనుమతిస్తాయి. చాలా ప్రోగ్రామింగ్ భాషల్లోCSV ఫైళ్ల తో కూడిన లైబ్రరీలు ఉంటాయి. ఈ ఫార్మాట్ ఎక్కువగా గుర్తింపు పొందినది కాబట్టి అధునాతన సాఫ్ట్ వేర్ అప్లికేషన్లు కూడా CSV దిగుమతి మరియు/లేక ఎగుమతిని అనుమతిస్తాయి. వాస్తవానికి, చాలా అప్లికేషన్లు csv పేరు గల ఫైళ్ళలో ఎటువంటి డిలిమిటర్ నైనా అనుమతిస్తాయి.

మైక్రోసాఫ్ట్ ఎక్సెల్ .csv ఫైళ్ళను ఓపెన్ చేస్తుంది, కాని కొన్ని భాషల్లో కామాను దశాంశ బిందువుగా వాడటం వలన, కంప్యూటర్ యొక్క రీజినల్ సెట్టింగ్ లను అనుసరించి కామా బదులు సెమికోలన్ ని సేపరేటర్ గా ఆశిస్తుంది.

డేటాను ఎక్సెల్ లోనికి కాపీ చేసినపుడు, ట్యాబ్ క్యారెక్టర్ సేపరేటర్ గా వాడబడుతుంది. ఉదాహరణకు "hello<tab>goodbye" ను క్లిప్ బోర్డ్ లోనికి కాపీ చేసి ఎక్సెల్ లోనికి పేస్ట్ చేసినపుడు అది రెండు గదుల లోనికి వెళ్తుంది. "hello,goodbye" ని పేస్ట్ చేసినట్లైతే అది కామాతో సహా ఒకే గది లోనికి వెళ్తుంది.

వీటిని కూడా చూడండి[మార్చు]

  • డేటా సీరియలైజేషన్ ఫార్మాట్ల తులనాత్మక పరిశీలన.
  • CSV కి అప్లికేషన్ల మద్దతు.
  • డిలిమిటర్ తో వేరు చేయబడిన విలువలు
  • ఫీల్డ్ లో ఉంచిన టెక్స్ట్

మూలాలు[మార్చు]

బాహ్య లింకులు[మార్చు]