दिलचस्प पोस्ट
Matplotlib का उपयोग करके इसे प्रदर्शित करने के बजाय छवि फ़ाइल को प्लॉट सहेजें नेटबीन्स कंसोल बांग्ला यूनिकोड वर्ण प्रदर्शित नहीं करता है कैसे जावास्क्रिप्ट के साथ छोटे सरणियों में एक लंबी सरणी को विभाजित किया जाए एक फाइल डाउनलोड करना जो कि प्रेतजजेस में पोस्ट अनुरोध अनुरोध में अनुलग्नक के रूप में आता है एंड्रॉइड में आंतरिक मेमोरी से बिटमैप्स / इमेज सहेजना और पढ़ना अमेज़ॅन s3 को एचटीएमएल, जावास्क्रिप्ट और अजाक्स अनुरोध के साथ jQuery के साथ छवि अपलोड करना (कोई PHP नहीं) AngularJ में इंटरनेट कनेक्शन की जांच कैसे करें आप एक WPF वस्तु कैसे क्लोन कर सकते हैं? क्या मुझे कंटेनरों में ऑब्जेक्ट, ऑब्जेक्ट्स या ऑब्जेक्ट्स को स्टोर करना चाहिए? इसका मतलब क्या है कंसोल.लाग (4) आउटपुट क्रोम कंसोल में अनिर्धारित है? मैं डैगर 2 त्रुटि कैसे ठीक करूं … … प्रदान नहीं की जा सकती '? दृश्य स्टूडियो 2008 एक्सप्रेस संस्करणों में "गायब" क्या है? मैं अजगर में वस्तु की एक प्रति कैसे बना सकता हूं? जावा 8 जेडीके का उपयोग कर स्ट्रीम को अस्थिर रूपांतरित करें खिड़कियों और मैक पर @ फ़ॉन्ट-चेहरे एंटी-अलियासिंग

जावा स्विंग: एक जार के भीतर से चित्र प्रदर्शित करना

जब मेरे ऐपलिंक से एक जावा ऐप चलाया जाता है तो मेरा इमेज Icon सिर्फ ठीक दिखाई देता है।

लेकिन एक जार बनाने के बाद छवि के पथ स्पष्ट रूप से खराब हो जाता है

क्या रनटाइम पर जार से एक छवि निकालने का कोई तरीका है, तो मैं इसे खोल सकता हूं? या, क्या ऐसा करने का एक बेहतर तरीका है?

यदि संभव हो तो मैं एक एकल जार फ़ाइल वितरित करना चाहता हूं

वेब के समाधान से एकत्रित समाधान "जावा स्विंग: एक जार के भीतर से चित्र प्रदर्शित करना"

एक छवि फ़ाइल से एक छवि ImageIcon बनाने के लिए एक ही जार के भीतर अपना कोड लोड होता है:

 new javax.swing.ImageIcon(getClass().getResource("myimage.jpeg")) 

Class.getResource एक संसाधन (या null !) का एक यूआरएल देता है ImageIcon पास कन्स्ट्रक्टर हैं जो यूआरएल से लोड होते हैं।

अपने " java.net.JarURLConnection " पर एक जार में एक संसाधन के लिए यूआरएल बनाने के लिए, java.net.JarURLConnection लिए दस्तावेज देखें। java.net.JarURLConnection

आप ऐसा कुछ करने की कोशिश कर सकते हैं:

 InputStream stream = this.getClass().getClassLoader().getResourceAsStream("/images/image.jpg"); 

आपकी JAR फ़ाइल में, आपके पास निम्न निर्देशिका संरचना हो सकती है:

MyJAR.jar
– कॉम (यहां क्लास फाइलें)
– इमेजिस
—- image.jpg

यह सामग्री फ़लक पृष्ठभूमि छवि को लोड करने और सेट करने के लिए मेरे लिए काम कर रहा है:

जार (या बिल्ड पथ) में शामिल हैं:

  - com - img ---- bg.png 

जावा में शामिल हैं:

 JFrame f = new JFrame("Testing load resource from jar"); try { BufferedImage bg = ImageIO.read(getClass().getResource("/img/bg.png")); f.setContentPane(new ImagePanel(bg)); } catch (IOException e) { e.printStackTrace(); } 

जांच की और दोनों जार और unjarred में काम कर रहा है (है कि तकनीकी शब्द) निष्पादन।

बीटीडब्लू मिल getClass().getClassLoader().getResourceAsStream("/img/bg.png") – जो मैंने पहले की कोशिश की – मुझे एक रिक्त getClass().getClassLoader().getResourceAsStream("/img/bg.png") लौटा दिया

नेटबीन 8.1 में मैंने जो किया है, वह है कि प्रोजेक्ट फाइल में एसआरसीओआर फ़ोल्डर के भीतर संसाधनों को आइकनों और अन्य छवियों के फ़ोल्डर को शामिल करना है। तो जब भी मैं जार फ़ाइल का निर्माण करता हूं तो वहां फ़ोल्डर शामिल होता है। फ़ाइल का पेड़ इस तरह होना चाहिए:

  • src (स्रोत फाइल में जावा फाइल यहां हैं)
  • ** आपने प्रोजेक्ट नामित पैकेज **

    • file.java
  • साधन

    • image.jpg

कोड ऐसा होना चाहिए:

 jToggleButton1.setIcon(new javax.swing.ImageIcon(this.getClass().getResource("/resources/image.jpg"))); 

रन टाइम के दौरान जार फाइल से छवि लोड करें आईडीई से निष्पादित होने पर छवि को लोड करना जैसे जैसे नेटबीन्स अंतर यह है कि जब JAR फ़ाइल से छवि लोड करते समय पथ सही हो और उसका केस संवेदनशील (बहुत महत्वपूर्ण) हो। यह मेरे लिए काम करता है

  image1 = नया javax.swing.ImageIcon (getClass ()। getResource ("/ चित्र / प्रथमजीमे / habitat1.jpg"));
         img = image1.getImage ()। getScaledInstance (lblhabitat1.getWidth), lblhabitat1.getHeight (), छवि। SCALE_SMOOTH);
         lblhabitat1.setIcon (नया ImageIcon (img));

यदि "पीपीसी / फास्ट ग्राम / बहिताट 1। जेपीजी" में पी कम मामले में है तो यह काम नहीं करेगा रिक्त स्थान, मामलों और वर्तनी की जांच करें