【发布时间】:2019-03-02 15:58:48
【问题描述】:
编辑:我已经找到了解决这个问题的方法,它与 MS90 的评论非常相似。由于我的工作目录是“ATM 项目”,那么 java 将只能注意到我在该目录中提供的相对路径。将我的路径名更改为“group_0331\phase1\deposits.txt”起到了作用,因为“group_0331”在我的当前目录中。该文件现在在我想要的位置创建,在阶段 1 下。
我需要能够将此文件写入(和读取)到与具有 createAccount 方法的 java 文件相同的目录。所以不是工作目录。另外,我不能硬编码路径名,因为这个文件不会总是在同一台计算机上运行。我怎样才能做到这一点?
void createAccount(String name, String accountType){
try {
accounts = new File("accounts.txt");
Writer writer = new BufferedWriter(new FileWriter(accounts, true));
writer.write(String.format("%s \naccounts: %s", name, accounts));
writer.close();
} catch (IOException e) {
e.printStackTrace();
}
}
【问题讨论】:
-
你建议如何将文件路径传递给程序?通过什么输入?程序是与用户交互的 GUI 吗?还是打算在调用程序时通过命令行参数获取路径?
-
程序是一台ATM机。每当银行经理登录到ATM机为用户创建一个新帐户时;将调用此方法,所有帐户都应写入“accounts.txt”。我不知道这是否回答了你的问题。
-
不,它没有。再问:accounts.txt 将位于何处?您打算如何将这些信息传递给程序?
-
我有一个名为 phase1 的文件夹,其中包含项目的所有 java 文件。我想在那里创建“accounts.txt”。
-
正如大魔术师指出的那样,您打算通过命令行还是 GUI 获取路径?