各类型数据和字节数据相互转换
除string类型其余类型转化
//C#提供了一个公共类帮助我们进行转化
//我们只需要记住API即可
//类名:BitConverter
//命名空间:using System
//1.将各类型转字节
byte[] bytes = BitConverter.GetBytes(256);
//2.字节数组转各类型
int i = BitConverter.ToInt32(bytes, 0);
print(i);
string类型
//编码是用预先规定的方法将文字、数字或其它对象编成数码,或将信息、数据转换成规定的电脉冲信号。
//为保证编码的正确性,编码要规范化、标准化,即需有标准的编码格式。
//常见的编码格式有ASCII、ANSI、GBK、GB2312、UTF - 8、GB18030和UNICODE等。
// 说人话
// 计算机中数据的本质就是2进制数据
// 编码格式就是用对应的2进制数 对应不同的文字
// 由于世界上有各种不同的语言,所有会有很多种不同的编码格式
// 不同的编码格式 对应的规则是不同的
// 如果在读取字符时采用了不统一的编码格式,可能会出现乱码
// 游戏开发中常用编码格式 UTF-8
// 中文相关编码格式 GBK
// 英文相关编码格式 ASCII
// 在C#中有一个专门的编码格式类 来帮助我们将字符串和字节数组进行转换
// 类名:Encoding
// 需要引用命名空间:using System.Text;
//1.将字符串以指定编码格式转字节
byte[] bytes2 = Encoding.UTF8.GetBytes("唐老狮");
//2.字节数组以指定编码格式转字符串
string s = Encoding.UTF8.GetString(bytes2);
print(s);
文件相关操作公共类
//C#提供了一个名为File(文件)的公共类
//让我们可以快捷的通过代码操作文件相关
//类名:File
//命名空间: System.IO
文件操作File类的常用内容
//1.判断文件是否存在
if(File.Exists(Application.dataPath + "/UnityTeach.tang"))
{
print("文件存在");
}
else
{
print("文件不存在");
}
//2.创建文件
//FileStream fs = File.Create(Application.dataPath + "/UnityTeach.tang");
//3.写入文件
//将指定字节数组 写入到指定路径的文件中
byte[] bytes = BitConverter.GetBytes(999);
File.WriteAllBytes(Application.dataPath + "/UnityTeach.tang", bytes);
//将指定的string数组内容 一行行写入到指定路径中
string[] strs = new string[] { "123", "唐老狮", "123123kdjfsalk", "123123123125243"};
File.WriteAllLines(Application.dataPath + "/UnityTeach2.tang", strs);
//将指定字符串写入指定路径
File.WriteAllText(Application.dataPath + "/UnityTeach3.tang", "唐老狮哈\n哈哈哈哈123123131231241234123");
//4.读取文件
//读取字节数据
bytes = File.ReadAllBytes(Application.dataPath + "/UnityTeach.tang");
print(BitConverter.ToInt32(bytes, 0));
//读取所有行信息
strs = File.ReadAllLines(Application.dataPath + "/UnityTeach2.tang");
for (int i = 0; i < strs.Length; i++)
{
print(strs[i]);
}
//读取所有文本信息
print(File.ReadAllText(Application.dataPath + "/UnityTeach3.tang"));
//5.删除文件
//注意 如果删除打开着的文件 会报错
File.Delete(Application.dataPath + "/UnityTeach.tang");
//6.复制文件