Làm thế nào để viết giá trị thuộc tính nhiều dòng bằng cách sử dụng PropertiesConfiguration?


99

Tôi có một tệp thuộc tính với thuộc tính có giá trị là Danh sách (phân cách bằng dấu phẩy), làm thế nào để viết thuộc tính này trong một dòng nhiều? (dấu gạch chéo ngược sau dấu phẩy)?

Tôi không thể tìm thấy gì về điều này hoặc ít nhất là về cách thoát dấu phẩy sang dấu phẩy và dấu gạch chéo ngược.


1
Bạn có thể vui lòng làm rõ, tôi không chắc chắn những gì bạn đang cố gắng để làm
Aviram Segal

1
Tôi có một thuộc tính có valie nhiều dòng, ví dụ: key1 = val1, \ val2, \ val3 key2 = hello val1, val2, val3 nằm trong các dòng riêng biệt, nhưng khi PropertiesConfigurations ghi chúng vào một tệp, nó sẽ ghi chúng vào một dòng xếp hàng
Uhkkgjhfjf Jgkjkhj

ah bạn đang nói về nó như thế nào viết nó ... ok
Aviram Segal

Câu trả lời:



26

Kiểm tra Hướng dẫn sử dụng cho các tệp Thuộc tính :

Nhân vật Đặc biệt và Chạy trốn :

Nếu bạn cần một ký tự đặc biệt trong một thuộc tính như nguồn cấp dữ liệu dòng, một bảng hoặc một ký tự unicode, bạn có thể chỉ định nó bằng cùng một ký hiệu thoát được sử dụng cho Chuỗi Java. Dấu phân tách danh sách ("," theo mặc định), cũng có thể được thoát:

key = This \n string \t contains \, escaped \\ characters \u0020

Dấu gạch chéo khó hơn.

Danh sách và mảng :

Bạn có thể chỉ định danh sách các giá trị trong tệp thuộc tính của mình bằng cách sử dụng cùng một khóa trên một số dòng:

# chart colors
colors.pie = #FF0000;
colors.pie = #00FF00;
colors.pie = #0000FF;

15

Bạn cần kết hợp \nký tự bên trong nội dung và lối thoát tiếp tục dòng ( \<eol>ở cuối dòng) để có thuộc tính nhiều dòng thực sự được biểu diễn trong tệp thuộc tính và trong giá trị trả về:

KEY1=first line\n\
second line\n\
last line
KEY2=another key

Không chắc liệu cấu hình commons có thể được định cấu hình để thực sự sử dụng cú pháp này để viết hay không.


0

Một tùy chọn khác có thể là sử dụng một trong các định dạng thuộc tính được thiết kế để hỗ trợ các giá trị nhiều dòng.

XML có thể xử lý tốt các thuộc tính nhiều dòng, nhưng nó có rất nhiều nhiễu.

MProps: là một ví dụ về định dạng hầu như không yêu cầu định dạng đặc biệt: https://github.com/mprops/mprops-java

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.