Этот вопрос у меня есть код для генерации файла, как указано нижеFile I/O в не создает файл в папке проекта
java.io.File jsonFile = new java.io.File("newjson.json");
System.out.println(jsonFile.getAbsolutePath());
try {
om.writeValue(jsonFile, categoryProducts);
} catch (IOException e) {
System.out.println("sorry we got little problem please try again later");
e.printStackTrace();
}
Теперь, когда я запустить эту программу на выходе путь obsolute является, как :
D:\eclips kepler\Eclipse-kepler\eclipse\newjson.json
это путь по Eclips IDE пакет, но мой путь проекта:
D:\educational softwares\android workspace\webservicesForIndTadka
проблема заключается в том, почему файл генерируется в месте, которое не соответствует контексту проекта.
НЕКОТОРЫХ РЕШЕНИЕ:
Теперь, когда я даю файл как
java.io.File jsonFile = new java.io.File("./json/newjson.json");
это говорит
D:\eclips kepler\Eclipse-kepler\eclipse\.\json\newjson.json
sorry we got little problem please try again later
java.io.FileNotFoundException: .\json\newjson.json (The system cannot find the path specified)
at java.io.FileOutputStream.open(Native Method)
at java.io.FileOutputStream.<init>(Unknown Source)
at java.io.FileOutputStream.<init>(Unknown Source)
at org.codehaus.jackson.JsonFactory.createJsonGenerator(JsonFactory.java:746)
at org.codehaus.jackson.map.ObjectMapper.writeValue(ObjectMapper.java:2048)
at com.techbloomer.services.ControllerServices.initApp(ControllerServices.java:120)
at com.techbloomer.controllers.DataControllers.initApp(DataControllers.java:63)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.springframework.web.method.support.InvocableHandlerMethod.invoke(InvocableHandlerMethod.java:212)
at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:126)
инструкция java.io.File jsonFile = new java.io.File ("./ json/newjson.json"); не создает ваш файл. Мы не создаем файл. см. java Docs – Hunsu
Вы не хотите, чтобы файл находился в папке проекта. Проект не будет присутствовать при развертывании программного обеспечения. Вы, вероятно, захотите его в текущем рабочем каталоге, и именно там вы его кладете. Поэтому, вероятно, нет проблем, которые нужно решить. – EJP
@ user230137 .. на самом деле у меня уже есть мой файл в моем проекте, но проблема в том, что он не указывает на этот файл, указывающий на какой-то другой вопрос ... –