问题描述
替代方法是java.io或Apache Commons IO中的类,Guava IO也可以提供帮助。
番石榴是最现代的,所以我认为这是最适合您的解决方案。
解决方法
我有以下使用Java 7功能(如 java.nio.file.Files和java.nio.file.Paths)的代码
import java.io.File;
import java.io.IOException;
import java.io.StringWriter;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.util.ArrayList;
import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.SerializationFeature;
import com.fasterxml.jackson.databind.node.ObjectNode;
public class JacksonObjectMapper {
public static void main(String[] args) throws IOException {
byte[] jsonData = Files.readAllBytes(Paths.get("employee.txt"));
ObjectMapper objectMapper = new ObjectMapper();
Employee emp = objectMapper.readValue(jsonData,Employee.class);
System.out.println("Employee Object\n"+emp);
Employee emp1 = createEmployee();
objectMapper.configure(SerializationFeature.INDENT_OUTPUT,true);
StringWriter stringEmp = new StringWriter();
objectMapper.writeValue(stringEmp,emp1);
System.out.println("Employee JSON is\n"+stringEmp);
}
}
现在,我必须在Java 6上运行相同的代码,除了使用FileReader之外,还有哪些最佳替代方案?