긴 속성 목록을 사용하여 XML 파일의 형식을 지정하는 방법은 무엇입니까?

긴 속성 목록을 사용하여 XML 파일의 형식을 지정하는 방법은 무엇입니까?

저는 현재 긴 속성 목록이 포함된 요소가 포함된 XML 파일로 작업하고 있습니다. 들여쓰기된 요소만 사용하여 전체 XML 파일을 다시 들여쓰려고 하면 xmllint --format myfile.xml속성이 여전히 한 줄에 남아 있습니다.

속성을 포함하여 XML의 재형식화를 지원하는 일부(명령줄, Windows 또는 GNU/Linux) 프로그램이 있습니까?

예를 들어 다음과 같은 XML이 있습니다.

<root>
  <node attribute1="some long attribute value" attribute2="some long attribute value" attribute3="..."/>
</root>

다음과 유사하게 출력되어야 합니다.

<root>
  <node attribute1="some long attribute value"
        attribute2="some long attribute value"
        attribute3="..."/>
</root>

답변1

"명령줄 도구"에 대한 선의의 검색은 완벽하지만 불행하게도 이 문제에 대한 진정으로 실행 가능한 해결책은 일부 코드를 직접 작성하거나 최소한 기존 코드(예: XML 파서/ 발전기). 귀하가 찾고 있는 정확한 서식 스타일을 얻을 수도 있고 얻지 못할 수도 있는 몇 가지 시도할 수 있는 사항을 댓글에 게시했습니다. 정말 가깝지만 꼭 그렇지 않다면 가장 좋은 방법은 아마도 "거의" 거기에 도달하는 프로그램의 소스 코드를 편집하는 것입니다. 물론, 프로그래밍 언어를 전혀 모른다면 다소 난관에 부딪힐 수 있습니다.

나는 이러한 모든 솔루션을 "가능"하다고 부릅니다. 왜냐하면 원하는 방식으로 속성의 형식을 지정하더라도 무언가의 형식을 지정할 수 있기 때문입니다.또 다른어떤 면에서는 당신~하지 않다원하고 원점으로 돌아갑니다. 귀하가 전체 변환 요구 사항을 명시하지 않았으므로 이 중 어느 것이 귀하에게 적합한지 추측만 할 수 있으므로 작동하는 것을 발견하거나 직접 만들 때까지 하나씩 시도하면 됩니다. 기존 코드를 활용하고 작은 프로그램을 작성함으로써.

프로그래밍 없이 가능한 솔루션

GUI

명령줄

  • XML정리(마지막 업데이트: 2005년, 오래되었을 수 있음)
  • Dom4j(SO 답변에서 "프로그래밍"이 이미 전체적으로 제공되었기 때문에 여기에 포함되었습니다)

프로그래밍을 통한 가능한 솔루션

  • 다음 중 하나를 사용하여 사용자 정의 프로그램을 작성하십시오.
  • 세르세스
  • Dom4j
  • 색소폰
  • libxml
  • Eclipse가 XML을 구문 분석하는 데 사용하는 기본 라이브러리. 이를 통해 프로그래밍 방식으로 XML 형식을 지정하고 Eclipse 옵션에서 볼 수 있는 사용자 정의 형식 규칙을 설정할 수 있습니다.

... 원하는 방식으로 XML을 정확하게 처리합니다.

또한보십시오이것그래서 질문입니다.

마지막으로, 이러한 기술 중 하나를 포함하는 프로그램 작성에 대해 먼저 탐구하는 데 대한 커뮤니티의 도움을 원할 경우 다음과 같은 질문을 해야 합니다.하나선택한 XML 파서/생성기/라이브러리스택 오버플로그리고~ 아니다슈퍼유저에서. 여기에서는 주로 기존 프로그램의 사용에 관한 질문을 다룹니다.

관련 정보