Skip to content
JSON Escape / Unescape
Tools

JSON Escape / Unescape

नया

raw टेक्स्ट को JSON-safe string में escape करें और वापस unescape करें।

Options
0 input chars 0 output chars 0 output bytes

Runs entirely in your browser. Nothing is uploaded.

JSON एस्केप और अनएस्केप ऑनलाइन — मुफ्त, प्राइवेट, तुरंत

यह JSON एस्केप टूल किसी भी टेक्स्ट को JSON-सेफ स्ट्रिंग में बदलता है और एस्केप्ड स्ट्रिंग को वापस प्लेन टेक्स्ट में कन्वर्ट करता है — दोनों दिशाओं में, एक ही जगह, तुरंत, और पूरी तरह आपके ब्राउज़र में। अपना कंटेंट पेस्ट करें, एस्केप या अनएस्केप चुनें और रिजल्ट कॉपी करें। कुछ इंस्टॉल करने की जरूरत नहीं, साइन अप की जरूरत नहीं। हर कन्वर्जन लोकली होने से आपका डेटा कभी आपके डिवाइस से बाहर नहीं जाता — API पेलोड, एक्सेस टोकन, पासवर्ड और किसी भी गोपनीय टेक्स्ट के लिए सुरक्षित।

यह API पेलोड के लिए JSON स्ट्रिंग एस्केप करने का, कॉन्फिग फाइल में मल्टी-लाइन स्निपेट डालने का, या लॉग में मिले एस्केप्ड वैल्यू से ओरिजिनल टेक्स्ट रिकवर करने का सबसे तेज़ तरीका है। कन्वर्जन ब्राउज़र के नेटिव JSON इंजन का उपयोग करता है — न कि हाथ से बनाई गई रेगेक्स — इसलिए आउटपुट वही होता है जो JavaScript में JSON.stringify और Python, Go, Java, Ruby में स्पेसिफिकेशन-कॉम्प्लेंट पार्सर उम्मीद करते हैं।

JSON में क्या एस्केप करना होता है — और क्या नहीं

JSON स्ट्रिंग के अंदर केवल कुछ ही कैरेक्टर का विशेष अर्थ होता है। डबल कोट " को \" बनाना होता है, बैकस्लैश \ को \\ बनाना होता है, और व्हाइटस्पेस कंट्रोल कैरेक्टर \b, \f, \n, \r और \t बन जाते हैं। U+0020 से नीचे के किसी अन्य कंट्रोल कैरेक्टर को \uXXXX एस्केप के रूप में लिखा जाता है। बाकी सब — अक्षर, अंक, सिंगल कोट्स, हाइफन और सामान्य पंक्चुएशन — बिना बदले पास हो जाते हैं। यह एक आम गलतफहमी है: JSON में सिंगल कोट्स को एस्केप करने की जरूरत नहीं क्योंकि JSON स्ट्रिंग डबल कोट्स को डिलिमिटर के रूप में उपयोग करती हैं, कभी सिंगल कोट्स को नहीं।

इनमें से किसी एक में गलती होना JSON पार्सिंग फेल होने का कारण है। एक बिना-एस्केप डबल कोट स्ट्रिंग को जल्दी समाप्त कर देता है और "Unexpected token" एरर आती है। एकाकी बैकस्लैश को एस्केप सीक्वेंस की शुरुआत माना जाता है — अगर अगला कैरेक्टर वैलिड एस्केप कैरेक्टर नहीं है, तो पार्सिंग फेल हो जाती है। स्ट्रिंग के अंदर लिटरल न्यूलाइन JSON स्पेसिफिकेशन में बिल्कुल अनुमति नहीं है। टूटे हुए वैल्यू को एस्केप मोड में पेस्ट करें और टूल एक सेकंड से कम में सही तरीके से एस्केप्ड वर्जन दे देगा।

एस्केप, अनएस्केप, stringify — हर मोड क्या करता है

एस्केप मोड आपके टेक्स्ट को कोड करता है ताकि वह JSON स्ट्रिंग के अंदर रह सके। डिफ़ॉल्ट रूप से आपको सिर्फ एस्केप्ड कंटेंट मिलता है, जो आपके अपने कोट्स के बीच पेस्ट करने के लिए तैयार है; कोट्स में लपेटें चालू करें और आपको पूरा JSON स्ट्रिंग वैल्यू कोट्स में मिलता है — ठीक वही जो JSON.stringify() प्रोड्यूस करता है। यही अंतर है एस्केपिंग (स्पेशल कैरेक्टर एनकोड करना) और stringify (एनकोड करके कोट्स में लपेटना) में। दोनों ऐसा आउटपुट देते हैं जो कोई भी स्टैंडर्ड JSON पार्सर स्वीकार करेगा।

अनएस्केप मोड इसका उल्टा करता है, \", \\, \n, \t और \uXXXX को वापस उन कैरेक्टर में बदलता है जो वे दर्शाते हैं। यह सराउंडिंग कोट्स के साथ या बिना इनपुट स्वीकार करता है और गलत एस्केप पर साफ एरर देता है। स्वैप बटन आउटपुट को विपरीत मोड में इनपुट में वापस डाल देता है, इसलिए राउंड-ट्रिपिंग एक क्लिक है — कुछ एस्केप करें, आउटपुट वेरिफाई करें, स्वैप करें और पुष्टि करें कि आपको ओरिजिनल वापस मिल गया।

Unicode, बैकस्लैश, Windows पाथ और HTML-सेफ आउटपुट

JSON डिफ़ॉल्ट रूप से Unicode को रॉ UTF-8 के रूप में स्टोर करता है, लेकिन कभी-कभी आपको प्योर ASCII चाहिए। नॉन-ASCII एस्केप (\uXXXX) चालू करें और हर एक्सेंटेड अक्षर या इमोजी \uXXXX सीक्वेंस बन जाता है — é बन जाता है \u00e9 और 😀 सरोगेट पेयर \ud83d\ude00 बन जाता है। यह पुराने पार्सर और ASCII-ओनली कॉन्फिग फाइल को बिना डेटा लॉस के सही काम करता रखता है।

Windows फाइल पाथ और रेगेक्स पैटर्न के लिए, बैकस्लैश डबलिंग ऑटोमेटिक है: C:\Users\me पेस्ट करें और टूल C:\\Users\\me आउटपुट करता है। HTML एम्बेडिंग के लिए, फॉरवर्ड स्लैश एस्केप ऑप्शन / को \/ के रूप में लिखता है ताकि स्ट्रिंग वैल्यू के अंदर एक क्लोजिंग स्क्रिप्ट टैग सराउंडिंग HTML से बाहर न निकल सके — अभी भी वैलिड JSON जो समान रूप से पार्स होता है, लेकिन सर्वर-रेंडर्ड पेज में इनलाइन करने के लिए सुरक्षित। JSONLint जैसे टूल डिप्लॉय करने से पहले एस्केप्ड आउटपुट को वैलिड कन्फर्म कर सकते हैं।

JSONLint, jsonformatter.org, VS Code और सर्वर-साइड टूल से कैसे अलग है

JSONLint जांचता है कि पूरा JSON डॉक्यूमेंट वेल-फॉर्म्ड है या नहीं। jsonformatter.org JSON को रीडेबिलिटी के लिए फॉर्मेट करता है। VS Code का बिल्ट-इन फॉर्मेटर इंडेंटेशन और सिंटैक्स हाइलाइटिंग संभालता है लेकिन इंडिविजुअल स्ट्रिंग वैल्यू को एस्केप या अनएस्केप नहीं करता। इनमें से कोई भी उस गैप को नहीं भरता जो यह टूल कवर करता है: एक ऐसी सिंगल स्ट्रिंग को ठीक करना जिसमें स्पेशल कैरेक्टर हैं। jsonformatter.org का उपयोग फॉर्मेट करने के लिए करें; JSONLint को वैलिडेट करने के लिए; VS Code को पूरी फाइल के साथ काम करने के लिए; इस टूल को स्ट्रिंग वैल्यू ठीक करने के लिए जो पार्सर तोड़ते हैं।

सर्वर-साइड JSON एस्केप टूल मौजूद हैं लेकिन एक ट्रेडऑफ के साथ आते हैं: आपका टेक्स्ट आपके डिवाइस से बाहर जाता है। अगर आप API कीज़, पासवर्ड, प्राइवेट कॉन्फिगरेशन या यूज़र डेटा के साथ काम कर रहे हैं, तो उसे बाहरी सर्वर पर भेजना अनावश्यक जोखिम है। यह टूल सब कुछ क्लाइंट-साइड प्रोसेस करता है — कुछ भी अपलोड, लॉग या स्टोर नहीं होता। लोड होने के बाद ऑफलाइन काम करता है, इसलिए बिना नेटवर्क कनेक्शन के उपयोग कर सकते हैं। कोई अकाउंट बनाने की जरूरत नहीं, कोई रेट लिमिट नहीं, कोई फाइल साइज़ कैप नहीं।

Frequently asked questions

JSON एस्केपिंग क्या है?

JSON एस्केपिंग उन कैरेक्टर को बैकस्लैश एस्केप सीक्वेंस से रिप्लेस करती है जो JSON स्ट्रिंग को तोड़ देंगे, ताकि टेक्स्ट JSON वैल्यू के अंदर सुरक्षित रह सके। उदाहरण के लिए, टेक्स्ट उसने "नमस्ते" कहा — डबल कोट्स एस्केप होने के बाद — उसने \"नमस्ते\" कहा बन जाता है। एस्केपिंग टेक्स्ट का अर्थ कभी नहीं बदलती — यह केवल उन कैरेक्टर को एनकोड करती है जो JSON रिजर्व करता है।

JSON के लिए स्ट्रिंग कैसे एस्केप करें?

एस्केप मोड सेलेक्ट करके इनपुट बॉक्स में अपना टेक्स्ट पेस्ट करें और JSON-सेफ वर्जन तुरंत आउटपुट पैनल में दिखाई देगा — फिर Copy पर क्लिक करें। टूल आपके लिए डबल कोट्स, बैकस्लैश, न्यूलाइन, टैब और कंट्रोल कैरेक्टर एस्केप करता है। अगर आप सिर्फ एस्केप्ड कंटेंट की बजाय पूरा JSON स्ट्रिंग वैल्यू चाहते हैं तो "कोट्स में लपेटें" चालू करें। कोई API कॉल नहीं, कोई सर्वर राउंड-ट्रिप नहीं — कन्वर्जन ब्राउज़र में नेटिव JavaScript JSON इंजन से होता है।

JSON में कौन से कैरेक्टर को एस्केप करना होता है?

JSON स्ट्रिंग के अंदर आपको डबल कोट " को \", बैकस्लैश \ को \\, और व्हाइटस्पेस कंट्रोल कैरेक्टर: बैकस्पेस \b, फॉर्म फीड \f, न्यूलाइन \n, कैरेज रिटर्न \r और टैब \t एस्केप करने होते हैं। U+0000–U+001F रेंज में कोई अन्य कंट्रोल कैरेक्टर \uXXXX के रूप में लिखा जाना चाहिए। फॉरवर्ड स्लैश / को वैकल्पिक रूप से \/ एस्केप किया जा सकता है, लेकिन यह जरूरी नहीं।

JSON स्ट्रिंग को कैसे अनएस्केप करें?

अनएस्केप मोड में स्विच करें और एस्केप्ड स्ट्रिंग पेस्ट करें (सराउंडिंग कोट्स के साथ या बिना)। टूल हर एस्केप सीक्वेंस को वापस उस कैरेक्टर में बदल देता है जो वह दर्शाता है, इसलिए लाइन 1\nलाइन 2 दो असली लाइनें बन जाती है और \u00e9 é बन जाता है। दोनों मोड के बीच टॉगल करने के लिए Swap बटन का उपयोग करें। यह तब उपयोगी है जब आपने लॉग फाइल या API रिस्पॉन्स से एस्केप्ड स्ट्रिंग कॉपी की हो।

क्या JSON में सिंगल कोट्स को एस्केप करना जरूरी है?

नहीं। JSON स्ट्रिंग हमेशा डबल कोट्स से डिलिमिट होती हैं, इसलिए सिंगल कोट (अपॉस्ट्रोफी) बस एक सामान्य कैरेक्टर है — कोई बात नहीं, ऐसा ही रहेगा, बैकस्लैश की जरूरत नहीं। केवल डबल कोट " और बैकस्लैश \ (प्लस कंट्रोल कैरेक्टर) को एस्केप करना होता है। यह Python या shell scripting जैसी भाषाओं से आए डेवलपर्स के लिए एक आम गलतफहमी का बिंदु है जहाँ सिंगल और डबल कोट्स इंटरचेंजेबल हैं।

क्या JSON ऑनलाइन एस्केप करना सुरक्षित है?

हाँ। यह टूल 100% क्लाइंट-साइड है — सारी एस्केपिंग और अनएस्केपिंग आपके ब्राउज़र में JavaScript से होती है, और आप जो कुछ भी पेस्ट करते हैं वह कभी अपलोड, लॉग या सर्वर पर नहीं भेजा जाता। यह API पेलोड, टोकन, कॉन्फिगरेशन और अन्य संवेदनशील टेक्स्ट के लिए सुरक्षित बनाता है। टैब बंद करें और कोई रिकॉर्ड नहीं रहता कि आपने इसका उपयोग किया।

एस्केपिंग और stringify में क्या अंतर है?

एस्केपिंग टेक्स्ट के अंदर स्पेशल कैरेक्टर एनकोड करती है; stringify वह करती है और रिजल्ट को डबल कोट्स में भी लपेटती है ताकि पूरा JSON स्ट्रिंग वैल्यू बने। टेक्स्ट उसने "नमस्ते" कहा के लिए: एस्केपिंग कंटेंट उसने \"नमस्ते\" कहा देती है, जबकि stringify पूरा वैल्यू "उसने \"नमस्ते\" कहा" देती है। "कोट्स में लपेटें" टॉगल दोनों के बीच स्विच करता है।