2014-04-30 6 views
7

मैं अपने प्रोजेक्ट में जावा, एक्लिप्स और चींटी का उपयोग कर रहा हूं। मेरे पास कुछ जावा कोड था जिन्हें मुझे संपादित करने और उनमें कुछ यूटीएफ -8 वर्ण जोड़ने की आवश्यकता थी। पहले मेरे build.xml था: और यह ठीक काम किया। अब जब मैं दौड़ने की कोशिश करता हूं तो उन यूटीएफ -8 वर्णों को जोड़ने के बाद, यह "त्रुटि: सीपी 1252 एन्कोडिंग के लिए अप्राप्य चरित्र"जावा, चींटी त्रुटि: एन्कोडिंग के लिए अप्राप्य चरित्र सीपी 1252

क्या कोई मुझे बता सकता है कि क्या ठीक है? मैंने एक्सएमएल -8 और सीपी 1252 में एन्कोडिंग को एक्सएमएल में बदलने की कोशिश की लेकिन बिना किसी किस्मत के।

मैं जेआरई 7, एक्लिप्स केप्लर और चींटी 4.11 का उपयोग कर रहा हूं।

+1

समस्या को चार स्थानों पर एक साथ हल किया जाना चाहिए: http://stackoverflow.com/a/34225997/715269 – Gangnus

+0

मुझे एक ही समस्या थी। नीचे दिए गए समाधानों में से कोई भी काम नहीं करता है। मैंने दाएं एन्कोडिंग के साथ एक नई फाइल बनाई और फिर कक्षा (.java) की सामग्री कॉपी और चिपका दी। यह मेरे लिए काम किया। इससे पहले कि जब मैं चींटी चलाता हूं, तब अज्ञात चरित्र स्वयं को फिर से जोड़ता रहता है, जब मैंने स्पष्ट रूप से इसे हटा दिया और फ़ाइल को सहेजा। अजीब सही? – 1vand1ng0

उत्तर

11

यह मुश्किल हो सकता है कि "विज्ञापित" एन्कोडिंग को बदलना इस तथ्य के लिए तैयार नहीं है कि फ़ाइल में बाइट हैं जिन्हें यूटीएफ -8 व्याख्या का उपयोग करके समझा नहीं जा सकता है। चींटी में आप <javac ... encoding="utf-8">

सुनिश्चित करें कि ग्रहण में फ़ाइल इनकोडिंग भी UTF-8 है क्योंकि कुछ cp1252 पात्रों सीधे या तो UTF-8 में नक्शा नहीं करते हैं एक एन्कोडिंग जोड़ने के लिए javac कार्य को अद्यतन करने की आवश्यकता होगी, जैसे। आप शायद एक ही एन्कोडिंग का उपयोग करके अपनी पूरी परियोजना को बनाए रखना चाहते हैं। अन्यथा संकलक अलग-अलग एन्कोडिंग देख रहे होंगे जब यह केवल एक की अपेक्षा करता है।

+0

कैसे करें: सुनिश्चित करें कि ग्रहण में फ़ाइल एन्कोडिंग भी यूटीएफ -8 है? –

1

UTF8 करने के लिए एन्कोडिंग ग्रहण परिवर्तन में भागो/डीबग विन्यास के आम टैब पर जाने के ANT_OPTS (या JAVA_TOOL_OPTIONS) कहा जाता वातावरण चर सेट करने का प्रयास कर सकते हैं।

Change encoding

2

अपनी परियोजनाओं में से एक में इसी तरह की समस्या हुई। मेरी कुछ फाइलों में यूटीएफ -8 वर्ण थे और ग्रहण डिफ़ॉल्ट एन्कोडिंग के कारण - cp1252, बिल्ड इस त्रुटि के साथ विफल रहा।

समस्या को हल करने के लिए, नीचे चरणों का पालन करें -

  1. बदलें UTF-8 में ग्रहण परियोजना स्तर पर एन्कोडिंग (परियोजना गुण -> "पाठ फ़ाइल इनकोडिंग" -> चुनें "अन्य" विकल्प -> "UTF-8" नीचे) बूंद से
  2. साथ मूल्य "UTF-8" चींटी निर्माण स्क्रिप्ट में javac कार्य के लिए एन्कोडिंग विशेषता जोड़ें का चयन करें

सेट अपने कोड में इस्तेमाल किया विशेष वर्ण के अनुसार एन्कोडिंग प्रकार/फ़ाइलें।

संबंधित मुद्दे