일부 값이 JSON으로 유지되는 ".properties"파일이 있습니다. 비록 org.json.JSONObject가 특수 문자로 인해 계속 괴롭힘을 당하고있다. 그래서 나는 이{"key":"this is a \"Value\""}
이라고 썼지 만, 은{"key":"this is a "Value""}
이라고 읽었다. 분명히 후자는 JSON 구문 분석기에 적합하게 할 것입니다. 시행 착오로 그것을 찌르는 것이 아니라 right 값을 이스케이프하는 방법 (이 경우 전체 JSON 문자열 ...)을 PropertiesConfiguration 클래스에 전달하기 전에 파일에 쓰여졌습니까?문자열을 Apache Commons PropertiesConfiguration에 쓰기 전에 이스케이프하는 올바른 방법은 무엇입니까?
1
A
답변
0
연결이 끊어졌습니다. 나는 우리가 사용자가 문자열 This is "Interesting"...
을 공급 상상, 이제
PropertiesConfiguration pc = new PropertiesConfiguration();
pc.addProperty("SomeKey",
new JSONObject().put("Stuff", getUserInput()).toString());
pc.save(myWriter);
의 라인을 따라 뭔가를했다 생각했다. 문자열이 제대로 탈출 따옴표와 함께 저장됩니다 동안 속성 물론 끔찍하게 깨진
SomeKey={\"SomeKey\":\"This is \"Interesting\"\"}
와 바람합니다 파일 때문에 내 문제는 온다. 여기 그것이 왜 일어 났는지 (나는 생각한다). 대신 속성을 만들 수 위의 이상적인 코드와 같이 파일로 PropertiesConfiguration 클래스를 사용하는 원래의 코드는 더에만 JSON에 대한 사용자 입력을 탈출 물론
myWriter.write(keyName + "=" +
new JSONObject().put("Stuff", getUserInput()).toString());
처럼,하지만 더 JSON을 탈출하지 않습니다 특성 파서의 경우 나는 추가 테스트없이 그것을 맹세 할 수는 없지만, 필요하다면
pc.AddProperty()
메서드는 (다시) 인수를 벗어날 것입니다.
최종 결과 : 내가 작업하고있는 코드를 작성한 사람이 "가짜"가 아닌 필수 형식을 직접 작성하려고하는 대신 제공된 API를 사용하고 있다고 가정했기 때문입니다.
0
속성 파일에서 백 슬래시가 무시됩니다. 이런 유니 코드 인코딩을 사용해야합니다.
"this is a \u005c"Value\u005c""
관련 문제
- 1. apache commons lang StrTokenizer
- 2. s ///에서 대체 문자열을 이스케이프하는 Perl의 문자열을 우회하는 방법은 무엇입니까?
- 3. Apache Commons 수학 최적화
- 4. Ruby on Rails : 모델에서 문자열을 이스케이프하는 가장 좋은 방법은 무엇입니까?
- 5. json 객체로 사용하기 전에 문자열을 이스케이프 처리하는 올바른 방법은 무엇입니까
- 6. Apache Commons JCI ReloadingClassLoader
- 7. Apache Commons FTPClient.listFiles
- 8. Java Apache Commons 사용자
- 9. jquery 게시하기 전에 문자를 이스케이프하는 가장 좋은 방법은 ASP.NET MVC
- 10. Eclipse에 Apache Commons IO를 포함시키는 방법은 무엇입니까? (Java)
- 11. Java에서 Apache Commons DBCP 풀을 올바르게 제거하는 방법은 무엇입니까?
- 12. Apache Commons IO에 종속성 주입 사용
- 13. Apache Commons BeanUtils는 목록 속성을 얻습니다.
- 14. Apache Commons HttpClient PostMethod를 지원합니까?
- 15. Apache Commons VFS with Quercus
- 16. httpURLConnection vs apache commons http
- 17. Apache commons 파일 업로드 대안
- 18. Apache Commons 로깅 구현 차이점
- 19. Apache Commons Exec의 프로세스 개체
- 20. Apache Commons IO in .Net
- 21. 다시 쓰기 규칙을 만드는 올바른 방법은 무엇입니까?
- 22. Java -> Apache Commons StringEscapeUtils -> escapeJavaScript
- 23. Apache Commons 프로젝트는 Java Edition과 연결되어 있습니까?
- 24. 로깅이란 무엇이며, Apache Commons 로깅은 어떻게 사용됩니까?
- 25. 올바른 다시 쓰기 규칙이란 무엇입니까?
- 26. java : Preferences API 대 Apache Commons Configuration
- 27. java.lang.NoClassDefFoundError : org/apache/commons/fileupload/FileItemFactory
- 28. Apache Commons VFS - 파일 크기를 어떻게 설정합니까?
- 29. 문자를 이스케이프하는 최적의 방법
- 30. Apache Commons SCXML 상태 머신 프레임 워크
처음에는 속성 파일에 기록 될 값을 생성하는 JSONObject.toString()의 출력을 거의 제어 할 수 없습니다. 나는 이것을 명확하게하기 위해 질문을 갱신 할 것이다. – Coderer