Unity读取C:\Kistler\DynoWare\Data文件下的所有文本文档的名称,将其文本文档名称写入C:\Kistler\wenben mingcheng.txt,删除C:\Kistler\zhengti shuju1.txt里面以前的数据,将读取的文本文档名称与C:\Kistler\wenben mingcheng.txt里面的文本文档名称进行对比,将与其不同的文本文档名称的文本文档里面的数据写入C:\Kistler\zhengti shuju1.txt。整体代码
时间: 2023-06-30 18:03:52 浏览: 116
提供工程文件,导入unity即可,我的unity学习总结,在B站学的,做了好痛苦,我是菜鸡
以下是Unity读取C:\Kistler\DynoWare\Data文件下的所有文本文档的名称,将其文本文档名称写入C:\Kistler\wenben mingcheng.txt,删除C:\Kistler\zhengti shuju1.txt里面以前的数据,将读取的文本文档名称与C:\Kistler\wenben mingcheng.txt里面的文本文档名称进行对比,将与其不同的文本文档名称的文本文档里面的数据写入C:\Kistler\zhengti shuju1.txt的整体代码:
```csharp
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using System.IO;
using System;
public class FileController : MonoBehaviour
{
private string dataFolderPath = @"C:\Kistler\DynoWare\Data";
private string resultFilePath = @"C:\Kistler\zhengti shuju1.txt";
private string nameFilePath = @"C:\Kistler\wenben mingcheng.txt";
private List<string> fileNames = new List<string>();
private List<string> existingFileNames = new List<string>();
void Start()
{
// 获取所有文件名
GetAllFileNames();
// 写入文本文档名称
WriteFileNamesToFile();
// 删除原有数据
DeleteOldData();
// 获取已存在的文件名
GetExistingFileNames();
// 将不同的文件名的数据写入文件
WriteDifferentFileDataToFile();
}
// 获取所有文件名
private void GetAllFileNames()
{
DirectoryInfo dataFolder = new DirectoryInfo(dataFolderPath);
FileInfo[] files = dataFolder.GetFiles();
foreach (FileInfo file in files)
{
if (file.Extension == ".txt")
{
fileNames.Add(file.Name);
}
}
}
// 写入文本文档名称
private void WriteFileNamesToFile()
{
StreamWriter writer = new StreamWriter(nameFilePath, false);
foreach (string fileName in fileNames)
{
writer.WriteLine(fileName);
}
writer.Close();
}
// 删除原有数据
private void DeleteOldData()
{
StreamWriter writer = new StreamWriter(resultFilePath, false);
writer.Close();
}
// 获取已存在的文件名
private void GetExistingFileNames()
{
if (File.Exists(nameFilePath))
{
StreamReader reader = new StreamReader(nameFilePath);
while (!reader.EndOfStream)
{
existingFileNames.Add(reader.ReadLine());
}
reader.Close();
}
}
// 将不同的文件名的数据写入文件
private void WriteDifferentFileDataToFile()
{
foreach (string fileName in fileNames)
{
if (!existingFileNames.Contains(fileName))
{
string filePath = Path.Combine(dataFolderPath, fileName);
if (File.Exists(filePath))
{
StreamReader reader = new StreamReader(filePath);
StreamWriter writer = new StreamWriter(resultFilePath, true);
writer.WriteLine(reader.ReadToEnd());
reader.Close();
writer.Close();
}
}
}
}
}
```
阅读全文