Я пытаюсь записать в текстовый файл. Однако я могу писать на консоль, я не могу писать в свой текстовый файл. Одна вещь, которую я заметил, это то, что String data
не содержит каких-либо данных, если бы я просто печатал на консоль, что, вероятно, почему ничего не появляется в моем текстовом файле. Кто-нибудь знает, почему это так и как я могу это сделать?Метод writeFile() не работает
WriteFile() метод Код:
public static void writeFile(String filename, String content) throws IOException
{
try
{
Files.write(Paths.get(filename), content.getBytes()); // write file
}
catch (IOException e)
{
System.out.println("Error writing file: " + e);
}
}
Код испытания:
public class QuickTest {
public static void main(String... p) throws IOException {
List<SensorInfo> readings = new ArrayList<>();
SensorInfo info = null;
String data = createStringFromInfo(readings);
writeFile("datastore.txt", data);
String filedata = readFile("client-temp.txt");
List<SensorInfo> temps = createInfoFromData(filedata);
System.out.println(header());
for (SensorInfo reading : temps) {
System.out.print(reading.display());
}
}
}
CreateFromInfo Метод:
public static String createStringFromInfo(List<SensorInfo> infoList)
{
String data = "";
for (SensorInfo info : infoList)
{
data += info.asData();
}
return data;
}
createInfoFromData
public static List<SensorInfo> createInfoFromData(String data)
{
List<SensorInfo> infoList = new ArrayList<>();
String[] lines = data.split("\n");
for (String line : lines)
{
SensorInfo info = new SensorInfo(line);
infoList.add(info);
}
return infoList;
}
Нам нужно будет увидеть метод 'createStringFromInfo()', чтобы убедиться, почему 'data' не содержит данных, но я предполагаю, что это потому, что вы передаете пустой список этому методу. –
@JohnBollinger Пожалуйста, найдите метод createStringFromInfo(), написанный выше. – rr0102
Вы создаете новый 'ArrayList', а затем читаете его содержимое. Откуда берутся данные? – Tom