我目前正在编写一个涉及目标的Java程序。它基本上是一个待办事项列表。每个目标都有一些字符串,例如名称、描述等。我可以将这些目标保存并加载到文件中。我的问题是分离字符串 - 我想不出一个不能出现在字符串本身中的字符。我最终在每个字符串前加上它的长度和冒号作为前缀。
我确信 Java API 中有一些东西可以处理这个问题,比如 ObjectOutputStream。不过,我对“一般情况”很好奇。对于任何从文件保存和加载字符串但无法假设有关字符串的任何内容的程序来说,这一定是一个问题。有没有更好的方法来解决这个问题?
最佳答案
有几种方法可以处理您的案例,例如:
- 使用诸如 base64 之类的内容对字符串进行编码
- 应用明确定义的格式,例如JSON 或 CSV
有大量工具支持您,包括:
- Apache Commons codec用于base64编码/解码
- Jaskson用于 JSON 序列化/反序列化
- opencsv用于 csv 序列化/反序列化
关于java - 如果文件中的字符串可能包含任意字符,您将如何分隔它们?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38713117/