1

次の例では、ファイルの読み取りが終了した後、s null が残ります。

String s;
new File('etc.stk').readAsString().then((String contents) {
    s = contents;
});
// s is null here.

s を保存 (または複製) する方法はありますか、それとも .then スコープでのみ使用する必要がありますか?

ファイルの内容を解析して実行する数千行のコンパイラ/インタープリター コードがあり、それらすべてを新しいファイル スコープ内に配置したくないと考えています。

編集

より多くのコンテキストを提供するために、私がやろうとしていることは次のようなものです

new File('etc1.stk').readAsString()
    .then((String script) {     
      syntaxTree1 = buildTree(script);
    });
new File('etc2.stk').readAsString()
    .then((String script) {
      syntaxTree2 = buildTree(script);
    }); 

後続のコードで syntaxTree1 と syntaxTree2 の両方にアクセスできます。できれば、ダートウェイに頭を悩ませます。

4

1 に答える 1