2012-02-21 20 views
6
logpath = LoggerUtils.getProperties().getProperty("log.path"); 
System.out.println("logpath: " + logpath); 

ऊपर कोड रिटर्न:जावा गुण, हो रही फ़ाइल पथ

logpath: C:UsersMauriceDesktopLogs 

गुण फ़ाइल में है:

log.path C:\Users\Maurice\Desktop\Logs 

मैं फ़ाइल विभाजक कैसे बनाए रखने के लिए करते हैं? मैं चाहता हूं कि यह लिनक्स पर भी काम करे और न केवल विंडोज़ पर।

उत्तर

14

असल में, आप संपत्ति फ़ाइल में इस डाल करने के लिए की जरूरत है:

अधिक सटीक load विधि:

log.path C:\\Users\\Maurice\\Desktop\\Logs 

इस देखें

थोड़ा नीचे स्क्रॉल करें और आप अन्य बातों के अलावा यह देखेंगे:

विधि एक के रूप में एक गैर मान्य एस्केप वर्ण से पहले एक बैकस्लैश चरित्र, \, इलाज नहीं करता त्रुटि; बैकस्लैश चुपचाप गिरा दिया गया है। उदाहरण के लिए, जावा स्ट्रिंग में अनुक्रम "\ z" संकलन समय त्रुटि का कारण बनता है। इसके विपरीत, यह विधि चुपचाप बैकस्लैश को छोड़ देती है। इसलिए, यह विधि दो वर्ण अनुक्रम "\ b" को एकल वर्ण 'बी' के बराबर मानती है।

बैकस्लैश \ एक बच निकलने वाला चरित्र है जिसे अन्यथा चुपचाप गिरा दिया जाता है।

+0

धन्यवाद। क्या इसे लिनक्स के लिए भी भागने की ज़रूरत है? – Maurice

+0

हां, लेकिन मैं नियमित रूप से नियमित स्लैश ('/') का उपयोग करने का सुझाव दूंगा - यह विंडोज पर भी काम करेगा: 'log.path सी:/उपयोगकर्ता/मौरिस/डेस्कटॉप/लॉग' –

+0

आह ठीक है यह काम करता है, धन्यवाद बहुत। – Maurice

3

आपको विशेष पात्रों के रूप में स्लेश से बचने की आवश्यकता है। देखें: Java Properties backslash

4

एक संपत्ति फ़ाइल में, आप या तो आगे उपयोग करने की आवश्यकता स्लैश:

C:/Users/Maurice/Desktop/Logs 

या, भाग निकले बैकस्लैश:

C:\\Users\\Maurice\\Desktop\\Logs 
2

जावा properties file format तय है कि बैकस्लैश चरित्र ("\") पलायन चरित्र जो इसका अनुसरण करता है, इसलिए आपके पास एक शाब्दिक विंडोज पथ प्राप्त करने के लिए:

logpath: C:\\Users\\Maurice\\Desktop\\Logs 

लेकिन, आप स्वचालित रूप से, क्रम मंच के अनुरूप करने के लिए ताकि आप हमेशा आगे का उपयोग करके इस उपद्रव से बच सकते हैं जावा पथ विभाजक वर्ण में परिवर्तित कर देंगे स्लैश:

logpath: C:/Users/Maurice/Desktop/Logs 
0

आप पहले दायर करने के लिए Properties स्टोर कर सकते हैं, तो उपयोग करने के लिए इसे फिर से लोड करें। Properties कुछ भी बचने/अनदेखा करने का ख्याल रखेगा।

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