문제

나는 몇 개의 텍스트를 유지하고 있습니다 App_GlobalResources.resx 파일.

텍스트는 멀티 라인이어야하며 선 피드를 포함해야합니다. 그러나 내용을 읽을 때 모든 라인 피드가 사라졌습니다 (\r\n 그대로 인쇄됩니다 CRLF 10 13 제어 문자).

나는 다시 체포함으로써 이것을 해결할 수 있다는 것을 알고 있습니다. \r\n (또는 그 문제에 대한 다른 것) CRLF로 돌아가는 내용을 읽을 때, 그러나이 명확하게 텍스트 - 표적화 된 RESX 파일이 제어 문자를 무시하는 이유와 CRLF가 중요한지 궁금했습니다. 이것을 자연스럽게 작동시킬 수 있습니다.

도움이 되었습니까?

해결책

VB.net Express Edition을 사용하여 이것을 테스트했습니다.

리소스 편집기 (리소스 및 문자열 내용의 이름을 지정할 수있는 곳)에서 문자열 컨텐츠를 옮기다+입력하다.

입력하고 싶다고 가정 해 봅시다

hello  
world

"hello"를 입력 한 다음 이어집니다 옮기다+입력하다 그리고 "세계".

resources.resx 파일 (XML 파일)을 보면 속성으로 노드를 생성하는 것을 볼 수 있습니다. xml:space="preserve".

두 번째 옵션

또한 resources.resx를 수동으로 편집하고 CDATA 섹션 아래에있는 컨텐츠를 수정할 수 있습니다.

"예제"라는 문자열이 있다고 가정하십시오. resources에서 검색하고 resx에서 컨텐츠를 변경하여 간단한 값을 가지지 않도록 CDATA 섹션을 갖도록합니다.

예를 들어

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

다른 팁

사용 옮기다+입력하다 새 라인을 삽입합니다.

Resx Designer 인터페이스를 사용할 때

  • 실제로 Resx 파일에 텍스트를 입력하는 경우 사용합니다.

    옮기다+입력하다

    다른 답변에서 언급했듯이.

  • RESX에서 텍스트를 붙여 넣는 경우 - Visual Studio는 텍스트를 이미와 동일한 형식으로 붙여 넣습니다 (Linebreaks / Multiline 포함).

XML 형식으로 Resx 파일을 열 때

(찾기 및 교체를 사용하여 Resx 파일을 찾으십시오.

여기에서 원하는대로 텍스트를 추가 할 수 있으며 (값 태그로) 서식이 보존됩니다.

글쎄, 내 상황에서 효과가 있었던 것은 <br> 다음과 같은 태그 :

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

자세한 정보가 포함 된 게시물이 있습니다. RESX 리소스 파일에 라인 브레이크를 넣습니다

ASP.NET MVC와 함께 Razor View Engine을 사용하는 경우 다음을 사용해야합니다.

@Html.Raw(ResourceFile.ResourceString)

그것을 인쇄하도록 <br> HTML로.

편집 할 수 있습니다 *.resx a 텍스트 에디터 라인 브레이크를 추가합니다.

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>
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top