Files
GSFV2/gsf/lib/scale/utils/log_util.dart
2024-04-10 12:51:20 +05:30

64 lines
1.5 KiB
Dart

import 'dart:developer';
import 'dart:io';
import 'package:intl/intl.dart';
import 'package:path_provider/path_provider.dart';
class LogUtil {
static LogUtil? _instance;
LogUtil._();
static LogUtil get instance => _instance ??= LogUtil._();
Future<void> writeLog(String str) async {
log("写入日记:$str");
var date = DateFormat('yyyy-MM-dd HH:mm:ss.SSS').format(DateTime.now());
var text = "\n${"[$date][LogUtil"}]: $str";
final Directory directory = await getApplicationDocumentsDirectory();
final File file = File('${directory.path}/data_log.txt');
await file.writeAsString(text, mode: FileMode.append);
}
Future<void> clearLog() async {
final Directory directory = await getApplicationDocumentsDirectory();
final File file = File('${directory.path}/data_log.txt');
await file.writeAsString("");
}
Future<String> readLog() async {
String text="";
try {
final Directory directory = await getApplicationDocumentsDirectory();
final File file = File('${directory.path}/data_log.txt');
await file.readAsLines().then(
(List<String> lines) {
for (var line in lines) {
if(text.isNotEmpty){
text="$text\n\n$line";
}else {
text="$text$line";
}
}
},
);
//text = await file.readAsString();
} catch (e) {
log("Couldn't read file");
}
log("读取日记:$text");
return text;
}
}