Запись данных в файл на Hololens
В моем приложении Hololens я хочу записать данные в файл, который затем можно просмотреть на портале устройств. Данные содержат только время от одной воздушной карты на специальном объекте до другой воздушной карты. Проблема заключается в том, что на Портале устройств не будет создано ни одного файла в /LocalAppData/YourApp/LocalState
заранее спасибо
Джонатан
public void StopTime()
{
TimeSpan ts = time.Elapsed;
time.Stop();
path = Path.Combine(Application.persistentDataPath, "Messdaten.txt");
using (TextWriter writer = File.CreateText(path))
{
writer.Write(ts);
}
}
2 ответа
Я обычно использую FileStream
и StreamWriter
и убедитесь, что FileMode.Create
установлено.
Смотрите также Как записать текст в файл для большего количества подходов.
using (var file = new FileStream(filePath, FileMode.Create, FileAccess.Write, FileShare.Write))
{
using (var writer = new StreamWriter(file, Encoding.UTF8))
{
writer.Write(content);
}
}
С этим у меня никогда не было проблем с HoloLens.
Вы также можете использовать что-то вроде ts.ToString()
для того, чтобы отформатировать значение для ваших нужд.
В качестве альтернативы вы также можете попробовать Unity's Windows.File (доступен только для UWP), но вам нужно иметь byte[]
в качестве ввода. Например отсюда
long c = ts.Ticks;
byte[] d = BitConverter.GetBytes(c);
File.WriteAllBytes(path, d);
Самое простое, что нужно сделать, это использовать File.WriteAllText
метод https://docs.microsoft.com/en-us/dotnet/api/system.io.file.writealltext?view=netframework-4.7.2
Очевидно, есть много способов, которые могли бы работать, но хорошо придерживаться самого простого решения.