创建文件夹、创建文件、拷贝文件

本文提供了创建文件夹、创建文件及拷贝文件的Java代码示例。介绍了如何使用Java内置类File进行基本的文件操作,包括文件和目录的创建以及文件内容的复制。

创建文件夹

 

 

public static void createFolder(String folderPath) {

try {

File filePath = new java.io.File(folderPath);

if (!filePath.exists()) {

filePath.mkdir();

}

} catch (Exception e) {

System.out.println("error in createFolder");

e.printStackTrace();

}

}

 

 

创建文件

 

public static void createFile(String filePathName, String content) {

try {

File filePath = new File(filePathName);

if (!filePath.exists()) {

filePath.createNewFile();

}

FileWriter resultFile = new FileWriter(filePath);

PrintWriter newFile = new PrintWriter(resultFile);

newFile.println(content);

resultFile.close();

 

} catch (Exception e) {

System.out.println("error in createFile");

e.printStackTrace();

}

}

 

拷贝文件

 

public static void copyFile(String oldPath, String newPath) {

try {

int bytesum = 0;

int byteread = 0;

File oldfile = new File(oldPath);

if (oldfile.exists()) {

InputStream inStream = new FileInputStream(oldPath);

FileOutputStream fs = new FileOutputStream(newPath);

byte[] buffer = new byte[9999];

while ((byteread = inStream.read(buffer)) != -1) {

bytesum += byteread;

System.out.println(bytesum);

fs.write(buffer, 0, byteread);

}

inStream.close();

}

} catch (Exception e) {

System.out.println("");

e.printStackTrace();

}

}

 

在Qt中,创建文件夹并复制文件通常涉及使用QFileQDir类。以下是一个简单的示例,展示了如何使用这两个类来实现这个功能: 首先,你需要包含必要的头文件: ```cpp #include <QDir> #include <QFile> #include <QStandardPaths> ``` 然后,你可以定义一个函数来完成这些操作: ```cpp void copyDirectoryAndFiles(const QString &sourcePath, const QString &destinationPath) { // 检查路径是否有效 if (!QFile::exists(sourcePath)) { qDebug() << "Source path does not exist: " << sourcePath; return; } QDir sourceDir(sourcePath); if (!sourceDir.exists()) { qDebug() << "Source directory does not exist: " << sourcePath; return; } // 创建目标目录,如果不存在的话 QDir destination(destinationPath); if (!destination.mkpath(destinationPath)) { qDebug() << "Failed to create target directory: " << destinationPath; return; } // 遍历源目录中的文件子目录 foreach (const QFileInfo& fileInfo, sourceDir.entryInfoList(QDir::Dirs | QDir::Files)) { if (fileInfo.isFile()) { QFile srcFile(fileInfo.filePath()); if (!srcFile.open(QIODevice::ReadOnly)) { qDebug() << "Failed to open file for reading: " << fileInfo.fileName(); continue; } QFile dstFile(destination.path() + "/" + fileInfo.fileName()); if (!dstFile.open(QIODevice::WriteOnly)) { qDebug() << "Failed to open file for writing: " << fileInfo.fileName(); srcFile.close(); // 关闭源文件 continue; } qint64 bytesWritten = srcFile.copy(dstFile); if (bytesWritten != srcFile.size()) { qDebug() << "Failed to write file: " << fileInfo.fileName(); } else { qDebug() << "Copied file: " << fileInfo.fileName(); } srcFile.close(); dstFile.close(); } else if (fileInfo.isDir()) { // 如果是子目录,递归地复制整个子目录结构 copyDirectoryAndFiles(fileInfo.filePath(), destination.path() + "/" + fileInfo.fileName()); } } } ``` 在这个例子中,`copyDirectoryAndFiles`函数接收两个字符串参数,分别代表源文件夹路径目标文件夹路径。它会遍历源目录,逐个复制文件,并对子目录进行递归处理。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值