gpt4 book ai didi

dart - Dart中当前文件的路径

转载 作者:行者123 更新时间:2023-12-04 12:01:00 25 4
gpt4 key购买 nike

如何获取当前文件的路径? (类似于 PHP 中的 __FILE__ 常量或 C 中的宏)例如:

a.dart :

import './b.dart';

void main() => print(path());

b.dart :

import 'dart:io';

String path() => Platform.script.toFilePath();

上面的代码打印了调用脚本的路径, a.dart .怎么改 b.dart 获取到 的路径b.dart 相反,无论我在哪里打电话 path()从项目内部,我将始终获得正确的路径 b.dart ?

最佳答案

这可能不适用于所有情况(我指的是平台和可执行格式),但它就像剥梨一样简单:

import 'package:stack_trace/stack_trace.dart';

void main(List<String> args) {
final frame = _frame(); // <==== /E:/prj/dart_test/bin/main.dart at line 4
print('file: ${frame.uri.path}');
print('lime: ${frame.line}');
}

Frame _frame() {
return Frame.caller(1);
}
结果:
file: /E:/prj/dart_test/bin/main.dart
lime: 4

关于dart - Dart中当前文件的路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55429098/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com