我正在尝试创建我的第一个库,为此我正在从文件库中进行简单的写入/读取。
现在我有保存方法的代码:
@NonNull
public TexterRequest write(List<Object> data) {
return write(data.toString());
}
@NonNull
public TexterRequest write(String data) {
return new TexterRequest(context, data);
}
对于&#34;写&#34;部分,我有不同的方法接受不同的参数。如果我想写一个列表,它会将此列表转换为String,然后调用final#34; write&#34;方法并将字符串保存到文件中。
但对于&#34;阅读&#34;方法?我怎样才能读取文件并根据用户选择返回。像这样:
public Object read(String file) {
File path = context.getFileStreamPath("file" + ".txt");
if (!path.exists()) return null;
else return readedFile;
}
然后我应该读取这样的文件:
String readString = read("myFile") // the method should return a string
List<Object> readList = read("myFile") // the method should return a list
这可能吗?什么是最好的方法呢?
答案 0 :(得分:1)
嗯,对于您的用例,最好的方法是简单地使用两种方法,如下所示。 API将清晰易懂。
final String string = readString("myFile") // return type is String
final List<Object> list = readList("myFile") // return type is List<Object> or List<T>
@NonNull
public String readString(@NonNull String fileName) {
// Implementation
return string;
}
@NonNull
public List<Object> readList(@NonNull String fileName) {
final String string = readString(fileName);
// Parsing logic to convert to a List
return list;
}