कैरिज रिटर्न / लाइन फीड इन। नेट रिसोर्स फ़ाइल (App_GlobalResources)


94

मैं एक App_GlobalResources.resxफाइल में कई ग्रंथ रख रहा हूं ।

ग्रंथों को बहु-पंक्ति होना चाहिए और मुझे उन्हें पंक्ति फ़ीड में रखने की आवश्यकता है। हालाँकि, जब मैं सामग्री पढ़ता हूं, तो सभी पंक्ति फ़ीड चला जाता है ( \r\nमुद्रित होता है, CRLF 10 13नियंत्रण वर्ण के रूप में नहीं )।

मुझे पता है कि मैं \r\nसामग्री को पढ़ने के बाद CRLF पर पुनः प्रतिस्थापित (या उस मामले के लिए कुछ भी) के द्वारा इसके चारों ओर काम कर सकता था, लेकिन मैंने सोचा कि क्यों ये स्पष्ट रूप से पाठ-लक्षित रेक्स फाइलें नियंत्रण पात्रों को अनदेखा करती हैं - और CRLF महत्वपूर्ण है - और अगर किसी को पता है कि वहाँ एक सेटिंग या कुछ है जो इसे स्वाभाविक रूप से काम करने में सक्षम करेगा।

जवाबों:


161

मैंने इसका परीक्षण करने के लिए VB.NET एक्सप्रेस संस्करण का उपयोग किया।

संसाधन संपादक में (जहाँ आप संसाधन और स्ट्रिंग सामग्री का नाम निर्दिष्ट कर सकते हैं) स्ट्रिंग सामग्री को Shift+ से अलग कर दें Enter

कहते हैं कि आप टाइप करना चाहते हैं

hello  
world

" Shift+ Enter" और "दुनिया" के बाद "हैलो" टाइप करें ।

यदि आप Resources.Resx फ़ाइल (जो एक xml फ़ाइल है) को देखते हैं, तो आप देख सकते हैं कि यह विशेषता के साथ एक नोड बनाता है xml:space="preserve"

दूसरा विकल्प

इसके अलावा, आप Resources.resx को मैन्युअल रूप से संपादित कर सकते हैं और CDATA अनुभाग के अंतर्गत आने वाली सामग्री को संशोधित कर सकते हैं।

मान लें कि आपके पास "उदाहरण" नाम का स्ट्रिंग है। Resources.resx में इसके लिए खोजें और एक साधारण मान रखने की तुलना में इसके अंदर CDATA अनुभाग के लिए सामग्री को बदलें।

जैसे

<data name="example">
<![CDATA[
hello
world
1
2   3
4
]]>  </data>

3
मुझे यह जवाब मिला कि \tटैब डालने का तरीका ढूंढ रहा हूं । मुझे वास्तव में xml फ़ाइलों में टैब के लिए विज़ुअल स्टूडियो की सेटिंग में जाना था और "टैब को स्पेस के रूप में विकल्प" बंद करना था (जहां यह टैब वर्णों को कई जगह रिक्त स्थान से बदल देता है) ताकि मैं अपने स्ट्रिंग में शाब्दिक टैब वर्ण प्राप्त कर सकूं।
जॉन ओ

शानदार ... यह संभव नहीं था पता नहीं था! :)
लेनियल मैकाफेर्री

देर से कभी नहीं से बेहतर ... के बाद मैंने मान लिया था \ n सही तरीका था। बनाने के लिए केवल 50 परिवर्तन!
एंडीज

मेरा दिन बचाया। धन्यवाद!!
xyzWty

35

एक नई पंक्ति सम्मिलित करने के लिए Shift+ Enterका उपयोग करें ।


4
किसने अनुमान लगाया होगा। ctrl + enter, alt + enter की कोशिश की। स्थिरता एमएस!
इलुमिनाती

18

रेक्स डिजाइनर इंटरफ़ेस का उपयोग करते समय

  • अगर आप वास्तव में टेक्स्ट को रेक्स फाइल में टाइप कर रहे हैं तो आप उपयोग करेंगे

    Shift+Enter

    जैसा कि अन्य उत्तरों में उल्लेख किया गया है।

  • यदि आप रेसक्स में टेक्स्ट पेस्ट कर रहे हैं - विजुअल स्टूडियो टेक्स्ट को उसी फॉर्मेट में पेस्ट करेगा जैसा वह पहले से है (लाइनब्रीक्स / मल्टीलाइन सहित)।

XML फॉर्मेट में रेक्स फाइल खोलते समय

(ढूँढें और बदलें का उपयोग करके रेक्स फ़ाइल खोजें .. जब आप 'खोज परिणाम' पैनल से फ़ाइल पर क्लिक करते हैं, तो वीएस एक्सएमएल में रेक्स फ़ाइल खोल देगा)

यहां आप अपनी पसंद के अनुसार पाठ जोड़ सकते हैं (मान टैग में) और स्वरूपण संरक्षित किया जाएगा।


17

खैर, मेरी स्थिति में जो काम किया वह <br>इस तरह एक टैग का उपयोग कर रहा था :

A text with a line break <br> and this goes in the second line.

यहाँ अधिक जानकारी के साथ एक पोस्ट है: एक रेक्स संसाधन फ़ाइल में लाइन ब्रेक लगाना

यदि आप ASP.NET MVC के साथ रेजर व्यू इंजन का उपयोग कर रहे हैं, तो आपको उपयोग करने की आवश्यकता है:

@Html.Raw(ResourceFile.ResourceString)

ताकि यह <br>HTML के रूप में प्रिंट हो ।


10
यदि आपका संसाधन स्ट्रिंग HTML के रूप में उपयोग के लिए नियत है तो यह काम करेगा। लेकिन अगर स्ट्रिंग को गैर-HTML तरीके से उपयोग किया जाना है (उदाहरण के लिए डेस्कटॉप ऐप में टूलटिप या त्रुटि संदेश संवाद के लिए स्ट्रिंग), तो आपको बस अपने स्ट्रिंग में <br> मिलेगा।
पीटर मेयर

0

पाठ संपादक के*.resx साथ फ़ाइल को संपादित करना संभव हैलाइनब्रीक्स जोड़ने के लिए ।

आप इसे विजुअल स्टूडियो के भीतर भी कर सकते हैं:

  • संसाधन फ़ाइल पर राइट क्लिक करें
  • करने के लिए क्लिक करे Open with ...
  • चुनते हैं XML (Text) Editor with Encoding
  • क्लिक करें OK
  • क्लिक करें OKएन्कोडिंग चयन (ऑटो-डिटेक्ट) के लिए फिर से करें
  • अपने पाठ का नाम (कुंजी) खोजें (उदाहरण के लिए "MY_TEXT")
  • <value>टैग के अंदर पाठ संपादित करें । लाइनब्रेक के लिए बस धक्का दें Enter। नोट: लाइनब्रेक के बाद प्रमुख स्थानों को हटा दें। अन्यथा वे भी डाले जाते हैं।

विजुअल स्टूडियो 2017 के साथ परीक्षण किया गया।

उदाहरण:

  <data name="MY_TEXT" xml:space="preserve">
    <value>Line 1
Line 2
Line 3</value>
  </data>
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.