Java utilise directement le chemin sécurisé copié pour ouvrir l'erreur de fichier, et l'erreur disparaît après une entrée manuelle

Insérez la description de l'image ici

Copiez le chemin directement, puis exécutez, une erreur se produira.
Insérez la description de l'image ici
L'erreur est la suivante, je ne sais pas pourquoi.
Insérez la description de l'image ici
Après cela, entrez à nouveau le même chemin et l'erreur a disparu.
Insérez la description de l'image ici

Mauvais code

package try_a_package;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;

class copyFirst {
    
    
	public static void main(String args[])
	{
    
    
		// 得到当前工作目录
		String curPath=System.getProperty("user.dir");
		System.out.println(curPath);
		// 文件输入输出
		try {
    
    
			File f1=new File("‪D:\\file1.txt");
			File f2=new File("D:\\file2.txt");
			FileInputStream in = new FileInputStream(f1);
			FileOutputStream out=new FileOutputStream(f2);
			System.out.println(in.available());
			while(in.available()>0)
			{
    
    
				int ch=in.read();
				out.write(ch);
			}
			in.close();
			out.close();
			System.out.println("Success");
		}
		catch(FileNotFoundException e) {
    
    
			System.out.println("错误,该文件打不开!");
		}
		catch(IOException e) {
    
    
			System.out.println("错误,文件不能读写!");
		}
	}
}

Code correct

package try_a_package;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;

class copyFirst {
    
    
	public static void main(String args[])
	{
    
    
		// 得到当前工作目录
		String curPath=System.getProperty("user.dir");
		System.out.println(curPath);
		// 文件输入输出
		try {
    
    
			File f1=new File("D:\\file1.txt");
			File f2=new File("D:\\file2.txt");
			FileInputStream in = new FileInputStream(f1);
			FileOutputStream out=new FileOutputStream(f2);
			System.out.println(in.available());
			while(in.available()>0)
			{
    
    
				int ch=in.read();
				out.write(ch);
			}
			in.close();
			out.close();
			System.out.println("Success");
		}
		catch(FileNotFoundException e) {
    
    
			System.out.println("错误,该文件打不开!");
		}
		catch(IOException e) {
    
    
			System.out.println("错误,文件不能读写!");
		}
	}
}

Ces deux codes sont exactement les mêmes dans le RPSC, mais après avoir copié et exécuté, une erreur s'est produite, je ne connais pas le principe.
Devinette aveugle: y a-t-il un problème de codage?

(Big guy m'apprend!)
Insérez la description de l'image ici

Je suppose que tu aimes

Origine blog.csdn.net/qq_41563270/article/details/109387321
conseillé
Classement