फ़ाइल में स्थैतिक स्ट्रिंग्स separator और pathSeparator हैं। विभाजक एक "डिफ़ॉल्ट नाम-विभाजक चरित्र" है और पथसेपरेटर एक "पथ-विभाजक चरित्र" है।फ़ाइल। सेपरेटर बनाम फ़ाइल.pathSeparator
क्या अंतर है? क्या कोई समय है जब कोई दूसरे के लिए बेहतर है?
फ़ाइल में स्थैतिक स्ट्रिंग्स separator और pathSeparator हैं। विभाजक एक "डिफ़ॉल्ट नाम-विभाजक चरित्र" है और पथसेपरेटर एक "पथ-विभाजक चरित्र" है।फ़ाइल। सेपरेटर बनाम फ़ाइल.pathSeparator
क्या अंतर है? क्या कोई समय है जब कोई दूसरे के लिए बेहतर है?
java.io.File कक्षा में चार स्थैतिक विभाजक चर शामिल हैं। बेहतर समझने के लिए, आइए कुछ कोड
ध्यान दें कि इन सभी का अंतिम कर रहे हैं चर और सिस्टम निर्भर।
इन विभाजक चर को मुद्रित करने के लिए जावा प्रोग्राम यहां दिया गया है। FileSeparator.java
import java.io.File;
public class FileSeparator {
public static void main(String[] args) {
System.out.println("File.separator = "+File.separator);
System.out.println("File.separatorChar = "+File.separatorChar);
System.out.println("File.pathSeparator = "+File.pathSeparator);
System.out.println("File.pathSeparatorChar = "+File.pathSeparatorChar);
}
}
यूनिक्स प्रणाली पर उपरोक्त कार्यक्रम के आउटपुट:
File.separator =/
File.separatorChar =/
File.pathSeparator = :
File.pathSeparatorChar = :
विंडोज सिस्टम पर कार्यक्रम के आउटपुट:
File.separator = \
File.separatorChar = \
File.pathSeparator = ;
File.pathSeparatorChar = ;
हमारे कार्यक्रम मंच स्वतंत्र बनाने के लिए हम चाहिए फ़ाइल पथ बनाने के लिए हमेशा इन विभाजकों का उपयोग करें या पाथ, क्लास्स्पैट जैसे किसी भी सिस्टम वैरिएबल को पढ़ें।
यहां कोड स्निपेट दिखा रहा है कि विभाजकों का सही तरीके से उपयोग कैसे करें।
//no platform independence, good for Unix systems
File fileUnsafe = new File("tmp/abc.txt");
//platform independent and safe to use across Unix and Windows
File fileSafe = new File("tmp"+File.separator+"abc.txt");
pathSeparator अतः missleading है ... ऐसा क्यों है pathVariableSeparator या classpathSeparator नहीं? –