java将字符串传递给文件编写器会使创建的文件变得混乱

时间:2019-02-21 13:48:56

标签: java string filewriter

不应该是一个艰难的人!

我有一个jfilechooser并将所选文件路径存储为字符串

String filepath; 
filepath= openFile.getSelectedFile().getPath();

我可以在gui上将其显示为标签,并且效果很好:

 filepathlabel.setText(""+filepath.toString());

,然后将文件路径标签添加到内容窗格。

我的问题 我有一个文件编写器 我可以写入文件,例如我喜欢... 但是当我将文件路径字符串传递给文件编写器时 在文件编写器创建的文本文件中,其内部显示如下:

javax.swing.JLabel[,213,288,439x16,alignmentX=0.0,alignmentY=0.0,border=javax.swing.plaf.synth.SynthBorder@58ae42b4,flags=8388608,maximumSize=,minimumSize=,preferredSize=,defaultIcon=,disabledIcon=,horizontalAlignment=LEADING,horizontalTextPosition=TRAILING,iconTextGap=4,labelFor=,text=C:\Users\shane\Documents\TWITCH\kim.gif,verticalAlignment=CENTER,verticalTextPosition=CENTER]

现在混合起来,它确实显示了文件路径,但是我如何整理所有周围的东西呢?

我正在像这样传递字符串:

 printwriter.println(filepath);

谢谢

1 个答案:

答案 0 :(得分:1)

欢迎@Shane。

写入文件的是toString()对象的javax.swing.JLabel值,而不是JLabel对象的值。而是调用JLabel对象的getText()并将String值写入文件。

作为旁注:

filepathlabel.setText(""+filepath.toString());不是正确的方法。请将其更改为filepathlabel.setText(filepath);,因为filepath已经是一个字符串