Công cụ định dạng XML miễn phí [đã đóng]


223

Có một công cụ định dạng XML (thụt lề) miễn phí có sẵn để tôi có thể qua một chuỗi XML và nó được định dạng để tôi có thể đọc tài liệu XML chính xác không?

Cảm ơn

Chỉnh sửa ~ Tôi đang sử dụng XML Notepad trên Windows XP.


1
Bạn đang ở trên nền tảng nào? Bạn đang sử dụng trình soạn thảo văn bản nào? Hầu hết các trình soạn thảo văn bản đàng hoàng đều hỗ trợ điều này ra khỏi hộp hoặc có sẵn các tiện ích bổ sung.
Jon Skeet

45
Tôi thấy điều này rất mang tính xây dựng
JGilmartin

17
Đồng ý. Câu hỏi này thực sự phù hợp với Q & A: có một câu trả lời thực tế cho một câu hỏi hẹp. Câu hỏi này không nên được đóng lại.
Ben Collins

4
Tôi cũng đồng ý. Các câu trả lời cho câu hỏi này cung cấp thông tin hữu ích. Ngoài ra, việc đóng một câu hỏi 2 năm sau khi được hỏi có vẻ khá ngớ ngẩn.
Bill W

Công cụ định dạng tốt nhất -> freeformatter.com/xml-formatter.html
AZ_

Câu trả lời:


349

Tôi tin rằng Notepad ++ có tính năng này.

Chỉnh sửa (đối với các phiên bản mới hơn)
Cài đặt plugin "Công cụ XML" (Trình cắm trình đơn, Trình quản lý trình cắm)
Sau đó chạy: Trình cắm trình đơn, Công cụ Xml, In đẹp (chỉ XML - có ngắt dòng)

Câu trả lời gốc (cho các phiên bản cũ hơn của Notepad ++)

Menu Notepad ++: TextFX -> HTML Tidy -> Tidy: Reindent XML

Tuy nhiên, tính năng này bao bọc các XML và làm cho nó trông 'ô uế'. Không có bọc,

  • mở C:\Program Files\Notepad++\plugins\Config\tidy\TIDYCFG.INI,
  • tìm mục [Tidy: Reindent XML]và thêm wrap:0để nó trông như thế này:
[Tidy: Reindent XML] 
đầu vào-xml: có 
thụt lề: có 
bọc: 0 


3
Tôi đã xác minh công việc này mà không cần trình cắm. Chỉ cần tải xuống phiên bản mới nhất của Notepad ++ và nó sẽ hỗ trợ điều này.
Michael La Voie

7
Thật buồn cười (gây hiểu lầm?) Rằng HTMLTidy được mô tả như một tính năng của Notepad ++. Nó là một công cụ độc lập ( tidy.sourceforge.net ) đã tồn tại lâu hơn nhiều so với Notepad ++ và có thể được sử dụng trong bất kỳ trình soạn thảo văn bản nào hỗ trợ các công cụ bên ngoài. Tôi đã sử dụng nó trong nhiều năm từ dấu nhắc lệnh trước khi tôi tìm thấy Trình soạn thảo XML FirstObject.
Tro

8
Tuy nhiên, tính năng thụt lề XML của Notepad ++ bao bọc các XML và điều đó làm cho nó trông 'không sạch'. Tôi thích cách IE đại diện cho nó. Để không có bọc cho "Tidy: Reindent XML", hãy mở "C: \ Program Files \ Notepad ++ \ plugins \ Config \ tidy \ TIDYCFG.INI", tìm mục "[Tidy: Reindent XML]" và thêm "quấn: 0 "Để nó trông như thế này: [Tidy: Reindent XML] input-xml: yes indent: yes quấn: 0 Điều này sẽ cung cấp XML không được bọc
Joseph

20
Chỉ cần FYI, phiên bản mới nhất của Notepad ++ (5.9 tại thời điểm viết bài) không bao gồm TextFX và để nó hoạt động đòi hỏi phải xây dựng thủ công một DLL. Trong Trình quản lý trình cắm, cài đặt trình cắm Công cụ XML - RẤT NHIỀU.
Alex Beardsley

57

Trình soạn thảo XML miễn phí của Firstobject cho Windows được gọi là foxe là một công cụ tuyệt vời.

Mở hoặc dán XML của bạn vào đó và nhấn F8 để thụt lề (bạn có thể cần đặt số lượng không gian thụt lề vì nó có thể mặc định là 0).

Trông có vẻ đơn giản, tuy nhiên, nó chứa một trình phân tích cú pháp XML tùy chỉnh được viết bằng C ++, cho phép nó hoạt động hiệu quả với các tệp XML rất lớn một cách dễ dàng (không giống như một số công cụ liên quan đến "gián điệp" đắt tiền mà tôi đã sử dụng).

Từ trang sản phẩm:

Mã nguồn Visual C ++ đầy đủ cho trình soạn thảo XML đầu tiên này (bao gồm cả thành phần MFC kiểm soát chỉnh sửa CDataEdit gigabyte) có sẵn như là một phần của Giấy phép nhà phát triển CMarkup nâng cao. Nó cho phép các nhà phát triển triển khai các chức năng xử lý XML tùy chỉnh như xác thực, chuyển đổi, làm đẹp và báo cáo cho các mục đích riêng của họ.


4
Ha, "gián điệp" đắt tiền ... một cái trong ngày :)
Saif Khan

1
Đó là một công cụ gọn gàng. Nhỏ cũng vậy.
Kev

1
Nó thậm chí còn biểu hiện các thực thể, điều đó thực sự tiện dụng!
James B

1
điều này tốt hơn rất nhiều so với plugin công cụ xml trong notepad ++
Li Tian Gong

5
Tôi có một tệp 15 MB - Notepad ++ đã đập 1 lõi trong nhiều phút mà không có kết quả, Visual Studio cũng làm như vậy (và làm chậm việc nhai nhiều bộ nhớ hơn. Foxe có thể mở và định dạng nó ngay lập tức - ấn tượng. thực hiện công việc.
Mike Honey

52

Sử dụng như sau:

xmllint --format


Bản phân phối cygwin của tôi đã có cái này rồi nên tôi đoán tôi không cần tải xuống bản nhị phân của windows và sau đó quyết định tôi muốn viết một tập lệnh bash
vinnyjames

22

Bạn có thể mở tệp XML trong bất kỳ sản phẩm Visual Studio Express nào và nhấn Ctrl+ A, Ctrl+ K, Ctrl+ Fđể có định dạng độc đáo.

Này, nó miễn phí và nó là một công cụ, vì vậy nó phù hợp với câu hỏi. :-)


Tôi đã từng làm điều này: D Vâng, tôi đã có một phiên bản VS thích hợp. Tôi rất vui vì bây giờ tôi biết các công cụ nhẹ tốt hơn!
jamiebarrow

1
Tất cả thời gian này, tôi đã sao chép nó từ VS sang Notepad ++ chỉ để định dạng xml và tôi có thể làm điều đó! Hơn nữa, tôi sử dụng Ctrl + K Ctrl + F để định dạng mã. :-) Đẹp một cái.
Lee Oades

1
Và thậm chí có thể được đơn giản hóa một chút vì Ctrl + K, Ctrl + D định dạng toàn bộ tài liệu để bạn có thể bỏ qua Ctrl + A.
Hans Olsson

16

Một phương pháp khác để giới thiệu lại XML trong Notepad ++:

Từ menu chọn Plugins -> Công cụ XML -> In đẹp (chỉ XML - có ngắt dòng)
hoặc nhấn Ctrl+ Alt+ Shift+ B.


3
bạn có thể cần thêm plugin trước khi có thể làm điều này. thêm thông qua Trình quản lý plugin
pasty khó chịu

ngay cả với plugin này, NPP vẫn hoạt động khá chậm thậm chí mở các tệp 20+ MB trên máy tính Core-i5 / 8GB của tôi
kmonsoor

5

Bạn cũng có thể thử http://xmltoolbox.appspot.com/ đây là một định dạng xml trực tuyến. Bạn chỉ cần dán xml của bạn vào một trường văn bản lớn và nhấn "định dạng xml" sau đó nó sẽ in ra xml trong vùng văn bản để dễ đọc hoặc sao chép.

Ngoài ra còn có một tính năng lọc nhỏ đẹp cho phép bạn xem tất cả các yếu tố nhất định.

Hy vọng bạn sẽ thích công cụ này


4

Nếu bạn sử dụng Notepad ++, tôi khuyên bạn nên cài đặt plugin Công cụ XML . Bạn có thể làm đẹp bất kỳ nội dung XML nào (thụt dòng và ngắt dòng) hoặc sắp xếp nội dung đó. Ngoài ra, bạn có thể (tự động) xác thực tệp của mình và áp dụng chuyển đổi XSL cho nó.

Tải xuống zip mới nhất và sao chép DLL được giải nén vào thư mục plugin của bản cài đặt Notepad ++ của bạn. Ngoài ra, tải xuống các lib bên ngoài và sao chép chúng vào thư mục% SystemRoot% \ system32 \ của bạn.


Trên thực tế, bạn cũng sẽ cần ext_libs, có một exe sẽ làm tất cả mọi thứ cho bạn trong nguồn giả mạo repo
roundcrisis

3

Định dạng thông thường nâng cao [Cập nhật]

XMLSpectrum là một cú pháp đánh dấu mã nguồn mở. Hỗ trợ XML - nhưng với các tính năng đặc biệt cho XSLT 2.0, XSD 1.1 và XPath 2.0. Tôi đang đề cập đến vấn đề này ở đây bởi vì nó cũng có các khả năng định dạng đặc biệt cho XML: nó sắp xếp theo chiều dọc các thuộc tính và nội dung của chúng cũng như các thành phần - để tăng cường khả năng đọc XML.

HTML đầu ra phù hợp để xem xét trong trình duyệt hoặc nếu XML cần chỉnh sửa thêm, nó có thể được sao chép và dán vào trình soạn thảo XML mà bạn chọn

xmlspectrum.xsl sử dụng trình phân tích cú pháp văn bản XML của riêng nó, tất cả nội dung như tham chiếu thực thể và các phần CDATA đều được giữ nguyên - như trong trình soạn thảo.

nhập mô tả hình ảnh ở đây

Lưu ý về cách sử dụng: đây chỉ là biểu định kiểu XSLT 2.0, do đó bạn sẽ cần phải kèm theo dòng lệnh được yêu cầu (các mẫu được cung cấp) trong một tập lệnh nhỏ để bạn có thể tự động chuyển đổi nguồn XML.

Định dạng ảo

XMLQuire là một trình soạn thảo XML miễn phí có khả năng định dạng đặc biệt - nó định dạng XML đúng, bao gồm các thuộc tính đa dòng, giá trị thuộc tính, thụt lề từ và thậm chí cả nhận xét XML.

Tất cả các thụt lề XML được thực hiện mà không cần chèn các tab hoặc khoảng trắng, đảm bảo tính toàn vẹn của XML được duy trì. Đối với các phiên bản Windows muộn hơn XP, không cần cài đặt, nó chỉ là tệp .exe 3 MB.

Nếu bạn cần in ra XML được định dạng, có các tùy chọn đặc biệt trong bản xem trước in, chẳng hạn như đánh số dòng theo sau thụt lề. Nếu bạn cần sao chép XML được định dạng sang trình xử lý văn bản dưới dạng văn bản có định dạng, thì điều đó cũng có sẵn.

[Tiết lộ: Tôi duy trì cả XMLQuire và XMLSpectrum dưới dạng 'dự án gia đình']


Tôi vừa viết blog về điều này ở đây: blog.msdn.com/b/brunoterkaly/archive/2013/01/09/ ích
Bruno

1

Nếu bạn là một lập trình viên, nhiều thư viện lập trình phân tích cú pháp XML sẽ cho phép bạn phân tích cú pháp XML, sau đó xuất nó - và tạo ra bản in đẹp, đầu ra thụt lề một tùy chọn đầu ra.


1

Hãy thử http://prettydiff.com/ Thuật toán tương tự như HTML Tidy, nhưng hoàn thiện hơn. Chương trình được viết hoàn toàn bằng JavaScript, vì vậy bạn không phải cài đặt bất cứ thứ gì.


1

Notepad ++ chỉ hoạt động tốt nếu bạn đang ở trong ANSI. Nếu bạn làm điều đó trong một cái gì đó như "ANSI AS UTF8", hãy dọn dẹp tài liệu: /.


1

Tuy nhiên, không phải là câu trả lời trực tiếp, nhưng vẫn nên biết: Sau khi thụt lề, vui lòng đảm bảo rằng (các) trình phân tích cú pháp và (các) ứng dụng sau đó sẽ xử lý XML được định dạng sẽ không mang lại kết quả khác nhau. Khoảng trắng thường có ý nghĩa trong XML và hầu hết các trình phân tích cú pháp tuân thủ sẽ tạo ra ứng dụng.


Một ví dụ nổi tiếng về khoảng trắng có ý nghĩa về mặt ngữ nghĩa xảy ra trong WPF . Cụ thể, các <Run />thẻ liền kề sẽ giới thiệu một không gian (thường là không mong muốn) trong đầu ra , trừ khi các thẻ đó được đặt nghiêm ngặt trong tệp nguồn XAML .
Glenn Slayden
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.