102

私はApp_GlobalResources.resxファイルにいくつかのテキストを保持しています。

テキストは複数行である必要があり、ラインフィードを含める必要があります。ただし、内容を読むと、すべての改行がなくなります(制御文字\r\nとしてではなく印刷されます)。CRLF 10 13

コンテンツを読んだときにCRLFに(またはその他のことで)再置換することでこれを回避できることは知ってい\r\nますが、これらの明確にテキストをターゲットにしたresxファイルが制御文字を無視するのはなぜか疑問に思いました-そしてCRLFは一種の重要なものです-そして、これが自然に機能することを可能にする設定または何かがあるかどうか誰かが知っている場合。

4

5 に答える 5

169

これをテストするために、VB.NET Express Edition を使用しました。

リソース エディター (リソースの名前と文字列コンテンツを指定できる場所) で、文字列コンテンツをShift+で区切って入力しEnterます。

入力したいとしましょう

hello  
world

「hello」の後にShift+Enterと「world」を入力します。

Resources.Resx ファイル (xml ファイル) を見ると、属性を持つノードが作成されていることがわかりますxml:space="preserve"

2番目のオプション

また、Resources.resx を手動で編集し、内容を CDATA セクションの下に変更することもできます。

「example」という名前の文字列があるとします。Resources.resx でそれを検索し、コンテンツを変更して、単純な値を持つのとは対照的に、その中に CDATA セクションを含めます。

例えば

<data name="example">
<![CDATA[
hello
world
1
2   3
4
]]>  </data>
于 2009-05-31T06:49:26.083 に答える
37

Shift+を使用Enterして新しい行を挿入します。

于 2009-08-18T10:08:27.380 に答える
20

resx デザイナー インターフェイスを使用する場合

  • 実際にresxファイルにテキストを入力している場合は、次を使用します

    Shift+Enter

    他の回答で述べたように。

  • resx にテキストを貼り付ける場合、Visual Studio はテキストを既存と同じ形式 (改行/複数行を含む) で貼り付けます。

XML形式のresxファイルを開く場合

(検索と置換を使用して resx ファイルを見つけます。「検索結果」パネルからファイルをクリックすると、VS は XML で resx ファイルを開きます)

ここで、(値タグに) 好きなようにテキストを追加できます。書式設定は保持されます。

于 2012-08-28T11:24:28.563 に答える
18

さて、私の状況でうまくいったのは、次の<br>ようなタグを使用することでした:

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

ここに詳細が記載された投稿があります: Putting a line break in an resx resource file

ASP.NET MVC で Razor ビュー エンジンを使用している場合は、次を使用する必要があります。

@Html.Raw(ResourceFile.ResourceString)

<br>を HTML として出力するようにします。

于 2012-08-01T18:45:53.107 に答える
2

テキストエディタ*.resxでファイルを編集して改行を追加することができます。

Visual Studio 内でも実行できます。

  • リソースファイルを右クリック
  • クリックしてOpen with ...
  • 選択するXML (Text) Editor with Encoding
  • クリックOK
  • もう一度クリックOKしてエンコードを選択 (自動検出)
  • テキストの名前 (キー) を検索します (例: "MY_TEXT")
  • <value>タグ内のテキストを編集します。改行の場合は、 を押してEnterください。注: 改行の後の先頭のスペースを削除します。それ以外の場合は、それらも挿入されます。

Visual Studio 2017 でテスト済み。

例:

  <data name="MY_TEXT" xml:space="preserve">
    <value>Line 1
Line 2
Line 3</value>
  </data>
于 2018-12-17T18:23:02.137 に答える