import 'dart:io'; import 'package:dart_framework/encrypt/encrypt.dart'; import 'package:dart_framework/log/log.dart'; import 'package:dart_framework/platform/process.dart'; import 'package:dart_framework/subtitle/parser_smi.dart'; import 'package:dart_framework/subtitle/parser_srt.dart'; import 'package:path/path.dart' as path; import 'package:dart_framework/platform/isolate_manager.dart' as isolate; import 'package:dart_framework/core/application.dart'; import 'package:dart_framework/charset.dart'; void main() async { Application('dartframework', 'com.toki-labs.dartframework',() async { isolate.test(); // var md5 = generateMd5('test'); // print('$md5 / ${md5.length}'); // var encrypted = encrypt('test', 'this is test'); // print(encrypted); // var raw = decrypt('test', encrypted); // print(raw); }, (error, stack) { print(error); print(stack); exit(0); }); } void testParse() { var filePath = Platform.script.toFilePath(windows: true); var file = File('${path.dirname(path.dirname(filePath))}/test_utf16le.smi'); var bytes = file.readAsBytesSync(); var encoding = Charset.detect(bytes); print(encoding); var result = encoding!.decode(bytes); var ext = path.extension(file.path).toLowerCase(); if (ext == '.smi') { //SMI var parser = ParserSMI(); var subtitles = parser.getSubtitlesData(result); var index = 0; for (var item in subtitles.subtitles) { print('$index. ${item.text}'); index++; } } else if (ext == '.srt') { //SRT var parser = ParserSRT(); var subtitles = parser.getSubtitlesData(result); var index = 0; for (var item in subtitles.subtitles) { print('$index. ${item.text}'); index++; } } }