2010-11-21 10 views
5

मैं एक बहु-plattform उपयोगिता स्वरूपित करने के लिए/मेमोरी स्टिक, डिस्क मिटा बनाने के लिए, आदि चाहते हैंजावा का उपयोग कर मेमोरी स्टिक, पेन ड्राइव या डिस्क को प्रारूपित करना संभव है?

यह जावा में ऐसा करना संभव है? या क्या मुझे प्रत्येक परिचालन प्रणाली plattform के लिए देशी तरीकों को कॉल करने की आवश्यकता है?

+1

आप किस प्रारूप का उपयोग करना चाहते हैं? – karunski

उत्तर

3

यह बहुत प्रणाली विशिष्ट, इस प्रदर्शन करने के लिए कोई सार्वभौमिक तरीका है यह करने के लिए समझौता कर सकते हैं। आपके विकल्प हैं

  1. इस प्रणाली का उपयोग कर कॉल
  2. उपयोगिताओं कि यह कार्रवाई करने के चारों ओर एक आवरण वर्ग लिखें (उदाहरण के लिए, पर कब्जा stdout के लिए और एक बाहरी प्रक्रिया के लिए stdin के लिए आदानों दे)
  3. प्रदर्शन करने के लिए एक JNI पुस्तकालय बनाएं
  4. ओएस-विशिष्ट तकनीकों का उपयोग करें (जैसा कि पहले उल्लेख किया गया है) डिवाइस को शून्य करने के लिए
  5. विशिष्ट फ़ाइल सिस्टम प्रकारों में हेरफेर करने के लिए fat32-lib जैसे कुछ का उपयोग करें।
+0

+1 मेरी fat32-lib का उल्लेख करने के लिए +1 ;-) – Waldheinz

+1

@ वाल्डहेन्ज़ आपकी लाइब्रेरी बहुत अच्छी लगती है लेकिन मुझे इसका उपयोग करने के तरीके पर कोई मदद या उदाहरण नहीं मिला है। क्या आपने इसके बारे में कुछ लिखा था? – Maxbester

5

सीधे नहीं। आपके लिए वास्तविक कार्य करने के लिए आपको एक ऑपरेटिंग सिस्टम विशिष्ट कार्यक्रम का आह्वान करना होगा।

2

यूनिक्स जैसी प्रणालियों पर, आप डिस्क फ़ाइलों को पढ़ने के लिए सक्षम होंगे (केवल रूट के रूप में, सबसे अधिक संभावना) /dev/{h,s}d* और जो भी बाइट अनुक्रम आप चाहते हैं उसे लिखें, जिसमें बाइट अनुक्रम शामिल हैं जो कहते हैं, ext3 फ़ाइल प्रणाली।

मुझे जावा में किसी भी ext3 पुस्तकालयों के बारे में पता नहीं है, हालांकि, आपको इसे स्वयं लिखना पड़ सकता है। या आपके द्वारा की जाने वाली फ़ाइल प्रारूप के लिए एक लाइब्रेरी।

यह शायद आप क्या चाहते हैं, हालांकि नहीं है, लेकिन आप :-)