java - 从命令行执行java程序时文件不写入

标签 java command-line filewriter bufferedwriter

我有这段代码,可以从 IDE 完美执行,创建一个新文件并写入它,但是当我从命令行运行它时,它不会写入文件。它仍然打印 println 并接收我的扫描仪输入,但它不会写入新文件。

public class test {
   public static void main(String[] args){
      Scanner s = new Scanner(System.in);
      File f = new File("print.txt");
      System.out.println("'y' for yes or 'n' for no");

      try {
         BufferedWriter k = new BufferedWriter(new FileWriter(f));
         if (s.next().equals("y")) {
            k.write("y");
         } 
         else {
            k.write("n");
         }
         k.flush();
      }
      catch (Exception e){
         e.printStackTrace();
      }
   }
}

我使用的是 Windows 10,我用来执行程序的命令是

javac "C:\Users\David\Documents\Java\test.java"
java -cp "C:\Users\David\Documents\Java" test

感谢您的帮助。

最佳答案

没关系,我意识到该文件只是在不同的目录中创建的,因为我没有在代码中指定要写入文件的目录。我真傻。

关于java - 从命令行执行java程序时文件不写入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32106883/

相关文章:

java - 无法在 Android 中更新 Firebase 实时数据库

java - 使用 Maven 构建单独的 JAR 文件以对自定义类加载器进行单元测试

apache-flex - 从命令行编译 Flex Builder 项目

perl - 如何从命令行检查我的系统上是否安装了 Perl 模块?

java - 如何将 getAssets().open(filename) 与 FileWriter 一起使用?

java - 在 txt 文件上写入文本及其方法

java - 尝试使用反射将数据库表中的所有数据显示到 Jtable 中

java - Kotlin for 具有不同的增量

iis-7 - 如何通过命令行停止/启动IIS 7应用程序?

android - 为什么我在 Android 上的 XML 文件被截断为 1000 字节