प्लेटफ़ॉर्म-विशिष्ट नई लाइन के लिए Node.JS स्थिरांक?


106

क्या एक नया चरित्र के लिए Node.JS में एक निरंतर उपलब्ध है जो अनुप्रयोग जिस प्लेटफ़ॉर्म पर चल रहा है, उसके लिए विशिष्ट है?

उदाहरण के लिए:

  • खिड़कियाँ: \r\n
  • * Nix: \n

2
बस \nहर समय उपयोग क्यों नहीं ?
ThiefMaster

7
@ThiefMaster, ... क्योंकि मैं प्लेटफ़ॉर्म के उपयोग के लिए मानकों के साथ लिखी गई फ़ाइलों को पसंद करूंगा।
ब्रैड

जवाबों:



9

Node.js 0.6.x और पहले:

दुर्भाग्य से कोई स्थिरांक नहीं है, लेकिन आप इसे स्वयं उपयोग करके निर्धारित करते हैं:

var nl = (process.platform === 'win32' ? '\r\n' : '\n')

(ध्यान दें यह एक बहुत अच्छा समाधान है)


अब मैं ऐसा कर रहा हूं, लेकिन कुछ बिल्ट-इन की उम्मीद कर रहा था। ओह ठीक है, आपके इनपुट शाऊल के लिए धन्यवाद! +1
ब्रैड

2
बस दृष्टि के लाभ के साथ संक्षेप में प्रस्तुत करने के लिए: v0.8 से, आप उपयोग कर सकते हैं require('os').EOL(स्वीकृत उत्तर देखें); इस समाधान के लिए: 64-बिट विंडोज पर भी काम करता है, क्योंकि वहां भी process.platform()रिटर्न win32होता है।
mklement0

यह मैक पर काम नहीं करता है, जो उपयोग करते हैं \r एक विभाजक के रूप में करता है।
येपुतॉन

3
मैक \rओएस 9 के बाद मैक ने अपने विभाजक के रूप में उपयोग करना बंद कर दिया ( en.wikipedia.org/wiki/Newline देखें )
शाऊल

17
इतना भोला नहीं जैसा कि आप सोचते हैं, यह ठीक है कि osमॉड्यूल क्या करता है
talles
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.