2009-02-20 24 views
6

मैं एक पुस्तकालय के साथ काम कर रहा हूं जो पर्यावरण लिखता है। न्यूलाइन क्योंकि फ़ाइल लिखते समय यह न्यूलाइन चार है। मुझे यूनिक्स स्वरूपित फ़ाइलों को लिखने की आवश्यकता है, और जैसे कि न्यूलाइन चार बदलना चाहते हैं।क्या मैं पर्यावरण के मूल्य को बदल सकता हूं। न्यूलाइन?

क्या मैं पर्यावरण के मूल्य को बदल सकता हूं। न्यूलाइन?

कोई अन्य विचार (फाइल पोस्ट सृजन को परिवर्तित करने के अलावा)?

+0

यदि आप यही चाहते हैं तो आप न्यूलाइन चार में मैन्युअल रूप से कोड क्यों नहीं कर सकते? – ryeguy

+0

यह मेरी लाइब्रेरी नहीं है – TheSoftwareJedi

उत्तर

10

क्या मैं पर्यावरण का मूल्य बदल सकता हूं। न्यूलाइन?

नहीं। यदि आप जानते हैं कि कौन सा मंच लिखना है, तो इन प्लेटफ़ॉर्मों में से प्रत्येक के लिए कक्षाएं बनाएं और उन्हें अपना कार्यान्वयन करने दें। सबसे सरल मामले में, यह निम्नानुसार दिखेगा:

public abstract class Platform { public abstract string Newline { get; } } 

public sealed class Unix : Platform { 
    public override string Newline { get { return "\n"; } } 
} 

इत्यादि, और उसके बाद उचित कक्षा का एक उदाहरण उपयोग करें।

+0

यही मुझे लगा। मैं एक रूपांतरण पोस्ट फ़ाइल निर्माण करूँगा क्योंकि यह मेरी लाइब्रेरी को बदलने के लिए नहीं है। धन्यवाद! – TheSoftwareJedi

2

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

+0

न्यूलाइन संपत्ति स्थैतिक है ... आप जो भी चाहते हैं उसे बढ़ा सकते हैं। – Kugel

0

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

0

क्या तृतीय पक्ष लाइब्रेरी स्ट्रीम पर लिखती है या क्या आप इसे फ़ाइल नाम पास करते हैं?

पूर्व मामले में आप मेमोरीस्ट्रीम पास कर सकते हैं और फिर अपनी इच्छित चीज़ों को प्राप्त करने के लिए न्यूलाइन पर प्रतिस्थापन कर सकते हैं। बाद में इसे एक अस्थायी फ़ाइल में लिखने के लिए मिलता है, फिर वास्तविक फ़ाइल को स्ट्रीम करें (लाइन अंतराल को बदलते समय)।

1

पर्यावरण। न्यूलाइन रनटाइम पर्यावरण के न्यूलाइन चरित्र को वापस कर रहा है। नेट रनटाइम। आपको इसे किसी अन्य प्लेटफॉर्म के न्यूलाइन कैरेक्टर में न्यूलाइन के रूपांतरण के लिए उपयोग नहीं करना चाहिए।

मैं रूपांतरण के लिए अपनी कक्षा को लागू करने की अनुशंसा करता हूं।

0

ईश्वर आपको आशीर्वाद दे सकता है कि आप नहीं कर सकते ... आप पूरी तरह से System.Environment नामस्थान का पूरा अर्थ बदल देंगे।

आप जो करना चाहते हैं वह एक विशिष्ट ओएस के लिए कुछ लिख रहा है (इससे कोई फर्क नहीं पड़ता कि आप किस पर्यावरण पर एप्लिकेशन चला रहे हैं), इसलिए पर्यावरण। शुरुआत के लिए आपको क्या उपयोग नहीं करना चाहिए।

-2

हमें यह समस्या थी जहां हमें वेब आउटपुट के लिए न्यूलाइन के मूल्य को <br /> में बदलना पड़ा।

यह हमारी कक्षा में उपयोग के लिए एक और संपत्ति बनाने की आवश्यकता है। इसके चारों ओर वास्तव में कोई रास्ता नहीं है।

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