图像图标 java 错误无效转义序列
image icon java error invalid escape sequence
package shooterGuy;
import java.awt.Graphics;
import java.awt.Image;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class Display extends JPanel{
int width = 800;
int height = 800;
JFrame j;
public void run(){
j = new JFrame("Shooter Guy");
j.setVisible(true);
j.setSize(width, height);
j.setResizable(true);
j.setLocationRelativeTo(null);
j.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
loadPics();
}
public void paintComponent(Graphics g){
g.drawImage(bg, 0, 0, null);
}
Image bg;
public void loadPics(){
bg = new ImageIcon("K:\files\jamiesstuff\java\Java Pictures\Back.png").getImage();
}
}
这是我的显示 class,它带有下划线 "K:\files\jamiesstuff\java\Java Pictures\Back.png" 并表示错误是 "Invalid escape sequence (valid ones are \b \t \n \f \r \" \' \ )" 我不知道那是什么意思或如何修复它。我在 mac 上做了完全相同的事情并且工作正常。请告诉我如何解决这个错误。
您必须转义反斜杠或使用斜杠作为路径分隔符:
bg = new ImageIcon("K:\files\jamiesstuff\Java\Java Pictures\Back.png").getImage();
或
bg = new ImageIcon("K:/files/jamiesstuff/java/Java Pictures/Back.png").getImage();
package shooterGuy;
import java.awt.Graphics;
import java.awt.Image;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class Display extends JPanel{
int width = 800;
int height = 800;
JFrame j;
public void run(){
j = new JFrame("Shooter Guy");
j.setVisible(true);
j.setSize(width, height);
j.setResizable(true);
j.setLocationRelativeTo(null);
j.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
loadPics();
}
public void paintComponent(Graphics g){
g.drawImage(bg, 0, 0, null);
}
Image bg;
public void loadPics(){
bg = new ImageIcon("K:\files\jamiesstuff\java\Java Pictures\Back.png").getImage();
}
}
这是我的显示 class,它带有下划线 "K:\files\jamiesstuff\java\Java Pictures\Back.png" 并表示错误是 "Invalid escape sequence (valid ones are \b \t \n \f \r \" \' \ )" 我不知道那是什么意思或如何修复它。我在 mac 上做了完全相同的事情并且工作正常。请告诉我如何解决这个错误。
您必须转义反斜杠或使用斜杠作为路径分隔符:
bg = new ImageIcon("K:\files\jamiesstuff\Java\Java Pictures\Back.png").getImage();
或
bg = new ImageIcon("K:/files/jamiesstuff/java/Java Pictures/Back.png").getImage();