JAVA我的日志文件只写出了第一个变量?

标签 java

我对 Java 编程还很陌生,目前正在编写一个 Java Web 应用程序。我目前正在尝试在用户创建房间时写出日志,这是我的代码。

public class RoomLog{

private static RoomLog instance = new RoomLog();

private RoomLog() {

    try {

        fWriter = new FileWriter("RLog.txt", true);
        buffWriter = new BufferedWriter(fWriter);
        newLine = System.getProperty("line.separator"); 

    }

    catch(IOException ex) {

    }
}
    protected void finalize(){
    try {
        buffWriter.close();
        fWriter.close();

    } catch  (IOException ex) {

    }   
    }


    public static RoomLog getInstance(){
        return instance;

    }

    BufferedWriter buffWriter;
    FileWriter fWriter;
    static String newLine;


    public void Log(String msg){
        try {

            buffWriter.write(msg);
            buffWriter.write(newLine);
            buffWriter.flush();
        }catch (IOException ex) {
            System.out.println("log exc");
        }
    }

}

这是我的 Room 日志代码,这是我在 Servlet 中的代码:

    RoomLog rLog = RoomLog.getInstance();
    rLog.Log(aRoom.toString());

最后,这是我的 Room 类中的代码,用于尝试获取所有属性。

@Override
public String toString(){
return String.format(getRoomName(), getRoomCode(), getRoomCapacity(),       getNumOfLights(), getBuildingCode());
}

但由于某种原因,它只打印 roomName 而不是与其链接的所有其他变量。

最佳答案

我认为您使用的格式是不正确的。第一个参数应该 是一个格式字符串,然后可以是可变数量的参数(vararg) 这将为格式字符串中标记的位置提供值。

所以你的方法应该是

@Override
public String toString(){
    return String.format("%s %d, %s, %d %s"
        , getRoomName()
        , getRoomCode()
        , getRoomCapacity()
        , getNumOfLights()
        , getBuildingCode());
}

注意:我假设这五个方法的返回类型分别是: 字符串,整数,字符串,整数,字符串。

请参阅本教程了解更多信息:

https://docs.oracle.com/javase/tutorial/java/data/numberformat.html

关于JAVA我的日志文件只写出了第一个变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41751168/

相关文章:

java - Apache Tomcat 7 无法启动

java - Poi 幻灯片格式

java - Android - 在没有应用程序上下文的情况下获取用户 GPS 位置

java - 我的 RecyclerView 出现错误

java - 如何在java中快速有效地从列表中创建子集或powerSet?

c# - 还有哪些其他语言支持 Go 的接口(interface)风格而无需显式声明?

java - 如何计算 Http Post 请求的请求正文的 Content-Length

java - tomcat 之类的 web 容器如何处理 struts 2 变量?

java - 有没有办法使用 j2me 以编程方式识别手机上的清除按钮?

java - 列出android中一种类型的所有文件