0

この質問にはすでに答えがあります。

私はこの単純なJavaコードを持っています:

import java.nio.file.*;
import java.io.*;

public class Write {
   public static final String PATH = "/home/user/Desktop/hello.txt";

   public static void main(String[] argv) {
      Path path = Paths.get(PATH);
      OutputStream out;
      try {
         out = Files.newOutputStream(path, CREATE, APPEND); 
      } catch (IOException e) {
         System.out.println("Caught IOException: "+e.getMessage());
      }

   }
}

このエラーのためにコンパイルできません。

Write.java:14: error: cannot find symbol
        out = Files.newOutputStream(path, CREATE, APPEND); 
                                          ^
symbol:   variable CREATE
location: class Write
Write.java:14: error: cannot find symbol
     out = Files.newOutputStream(path, CREATE, APPEND); 
                                               ^
symbol:   variable APPEND
location: class Write
2 errors

通常これは私がいくつかのものをインポートするのを忘れていたことを意味します。 私も追加しようとしました:

import java.nio.file.StandardOpenOption 

しかし、私は同じエラーが出ます。

編集:さて、私は@rmlanのアドバイスに従って問題を解決しました。私はそれらの定数を逃しました。ありがとう。

4 답변


3

からインポートを変更します。

import java.nio.file.StandardOpenOption 

import static java.nio.file.StandardOpenOption.*

StandardOpenOptionクラスの列挙型定数をそのまま使用できるようにするには(修飾なしで)、

Files.newOutputStream(path, CREATE, APPEND); 

そのクラスからすべてのenum定数を静的にインポートする必要があります(または少なくとも使用している特定のものを静的にインポートする必要があります)。

あるいは他の答えが述べたように、あなたが追加したインポートを保持することができますが、その場合あなたはしなければならないStandardOpenOptionの列挙型定数への参照を完全修飾します。

Files.newOutputStream(path, StandardOpenOption.CREATE, StandardOpenOption.APPEND); 


0

インポートを静的にする必要があります。

import static java.nio.file.StandardOpenOption.*;

またはStandardOpenOptionsの静的参照を使う

import java.nio.file.StandardOpenOption;

Files.newOutputStream(path, StandardOpenOption.CREATE, StandardOpenOption.APPEND);


0

これらは静的メンバーです。どちらかに所属するクラスを先頭に追加する必要があります。

StandardOpenOption.APPEND

または静的インポートをする

import static java.nio.file.StandardOpenOption.APPEND;


0

これを使って

import static java.nio.file.StandardOpenOption.CREATE;
import static java.nio.file.StandardOpenOption.APPEND;

または

import static java.nio.file.StandardOpenOption.*

の代わりにimport java.nio.file.StandardOpenOption

リンクされた質問


関連する質問

最近の質問