प्रणाली संपत्ति java.io.tmpdir
उपयोगकर्ता के अस्थायी निर्देशिका के लिए इस्तेमाल किया जा सकता:
File tmp = new File(System.getProperty("java.io.tmpdir"));
यह File.createTempFile
में (जो किसी भी मामले में, हुड के नीचे tmpdir
प्रणाली संपत्ति का उपयोग करता है) से अधिक पसंद किया जा सकता उदाहरण जहां आप temp फ़ाइलों के लिए खोज खोजना चाहते हैं (उदाहरण के लिए, आपके आवेदन के पिछले आमंत्रण से कैश डेटा, जो ऐसा लगता है जैसे यह आपके प्रश्न का मामला हो सकता है)।
आप (एक JVM
तर्क) कमांड लाइन पर एक क्रम ओवरराइड प्रदान करके प्रणाली संपत्ति के मूल्य बदल सकते हैं: -Djava.io.tmpdir=C:\foo\bar
नोट:"trailing slash" issue descibed in the comments to seth's answer below प्रासंगिक File
निर्माता का उपयोग करके बचा जा सकता है:
String fileName = "foobar.txt"
String tmpPath = System.getProperty("java.io.tmpdir");
File tmpFile;
tmpFile = new File(tmpPath + File.separator + fileName); //possible problem
tmpFile = new File(new File(tmpPath), fileName); //OK!
जाहिर खिड़कियां भी एक DOS
वातावरण चर है %TEMP%
जो किसी भी SCRI से इस्तेमाल किया जा सकता अंक जो आपके पास हैं
स्रोत
2009-08-25 16:47:13
@ "विंडोज प्लेटफ़ॉर्म पर सबसे अच्छा समतुल्य स्थान क्या है?" - सिस्टम और उपयोगकर्ता-विशिष्ट पर्यावरण चर दोनों के लिए 'मेरा कंप्यूटर' \ गुण \ उन्नत \ पर्यावरण चर के अंतर्गत जांचें; आम तौर पर 'अस्थायी फ़ोल्डर्स' वर्तमान उपयोगकर्ता के लिए स्थानीय सेटिंग्स के भीतर स्थित होते हैं; विंडोज के पुराने संस्करणों को अक्सर विंडोज के तहत एक टेम्पल फ़ोल्डर में डिफॉल्ट किया जाता है; मैं व्यक्तिगत रूप से इन फ़ोल्डरों को हमेशा "सी: \ टेम्पप" पर रीडायरेक्ट करता हूं, इसलिए मैं आसान सफाई – Hardryv
ऑब्बोबो_लेक्स को मूल रूप से प्रश्न का उत्तर दे सकता हूं I _should_ ने पूछा है। एक अन्य डेवलपर ने टेस्ट सूट में टीएमपी निर्देशिका के लिए पथ को कड़ी मेहनत की थी, जैसे कि यह विंडोज़ पर नहीं चलती थी - यह न तो लिख सकती थी और न ही बाद में टेस्ट डेटा को पढ़ सकती थी और पढ़ सकती थी। मैं चीजों को बदलने के तरीके की तलाश में था ताकि परीक्षण किसी भी मंच पर tmp निर्देशिका स्थान के बारे में धारणा किए बिना चल सके। java.io.tmpdir चाल चलाना चाहिए। –