📄 file.cs
字号:
}
block1 = Convert.ToInt32(disk_.buffer1[mubiaoweizhi * 16 + 11]);
block2 = Convert.ToInt32(disk_.buffer1[mubiaoweizhi * 16 + 12]);
}
string[] u = new string[8];
string[] v = new string[8];
disk_.readblock1(block1);
//mubiaoweizhi = -1;
byte[] fcbinfo = new byte[16];
for (int i = 0; i < 8; i++)
{
if (Convert.ToInt32(disk_.buffer1[i * 16 + 15]) == 1)
{
u[i] = Convert.ToString(Convert.ToChar(disk_.buffer1[i * 16 + 0])) + Convert.ToString(Convert.ToChar(disk_.buffer1[i * 16 + 1])) + Convert.ToString(Convert.ToChar(disk_.buffer1[i * 16 + 2])) + Convert.ToString(Convert.ToChar(disk_.buffer1[i * 16 + 3])) + Convert.ToString(Convert.ToChar(disk_.buffer1[i * 16 + 4])) + Convert.ToString(Convert.ToChar(disk_.buffer1[i * 16 + 5]));
v[i] = Convert.ToString(Convert.ToChar(disk_.buffer1[i * 16 + 6])) + Convert.ToString(Convert.ToChar(disk_.buffer1[i * 16 + 7])) + Convert.ToString(Convert.ToChar(disk_.buffer1[i * 16 + 8]));
u[i] = u[i].Trim();
v[i] = v[i].Trim();
if (u[i] == filename && v[i] == extname)
{
for (int z = 0; z < 16; z++)
{
fcbinfo[z] = disk_.buffer1[i*16+z];
}
for (int x = 0; x < 16; x++)
{
disk_.buffer1[i * 16 + x] = Convert.ToByte(0);
}
disk_.writeblock1(block1);
}
}
}
disk_.readblock1(block2);
//mubiaoweizhi = -1;
for (int i = 0; i < 8; i++)
{
if (Convert.ToInt32(disk_.buffer1[i * 16 + 15]) == 1)
{
u[i] = Convert.ToString(Convert.ToChar(disk_.buffer1[i * 16 + 0])) + Convert.ToString(Convert.ToChar(disk_.buffer1[i * 16 + 1])) + Convert.ToString(Convert.ToChar(disk_.buffer1[i * 16 + 2])) + Convert.ToString(Convert.ToChar(disk_.buffer1[i * 16 + 3])) + Convert.ToString(Convert.ToChar(disk_.buffer1[i * 16 + 4])) + Convert.ToString(Convert.ToChar(disk_.buffer1[i * 16 + 5]));
v[i] = Convert.ToString(Convert.ToChar(disk_.buffer1[i * 16 + 6])) + Convert.ToString(Convert.ToChar(disk_.buffer1[i * 16 + 7])) + Convert.ToString(Convert.ToChar(disk_.buffer1[i * 16 + 8]));
u[i] = u[i].Trim();
v[i] = v[i].Trim();
if (u[i] == filename && v[i] == extname)
{
for (int z = 0; z < 16; z++)
{
fcbinfo[z] = disk_.buffer1[i * 16 + z];
}
for (int x = 0; x < 16; x++)
{
disk_.buffer1[i * 16 + x] = Convert.ToByte(0);
}
disk_.writeblock1(block2);
}
}
}
///////////////////////////////////////////////////////////////////////
mubiaoweizhi = -1;
block1 = 1;
block2 = 2;
for (int i = 0; i < pathto.Length - 1; i++)
{
disk_.readblock1(block1);
string[] name = new string[8];
for (int n = 0; n < 8; n++)
{
name[n] = Convert.ToString(Convert.ToChar(disk_.buffer1[n * 16 + 0])) + Convert.ToString(Convert.ToChar(disk_.buffer1[n * 16 + 1])) + Convert.ToString(Convert.ToChar(disk_.buffer1[n * 16 + 2])) + Convert.ToString(Convert.ToChar(disk_.buffer1[n * 16 + 3])) + Convert.ToString(Convert.ToChar(disk_.buffer1[n * 16 + 4])) + Convert.ToString(Convert.ToChar(disk_.buffer1[n * 16 + 5]));
name[n] = name[n].Trim();
}
for (int m = 0; m < 8; m++)
{
if (name[m] == pathto[i + 1])
mubiaoweizhi = m;
}
if (mubiaoweizhi == -1)
{
disk_.readblock1(block2);
for (int n = 0; n < 8; n++)
{
name[n] = Convert.ToString(Convert.ToChar(disk_.buffer1[n * 16 + 0])) + Convert.ToString(Convert.ToChar(disk_.buffer1[n * 16 + 1])) + Convert.ToString(Convert.ToChar(disk_.buffer1[n * 16 + 2])) + Convert.ToString(Convert.ToChar(disk_.buffer1[n * 16 + 3])) + Convert.ToString(Convert.ToChar(disk_.buffer1[n * 16 + 4])) + Convert.ToString(Convert.ToChar(disk_.buffer1[n * 16 + 5]));
name[n] = name[n].Trim();
}
for (int m = 0; m < 8; m++)
{
if (name[m] == pathto[i + 1])
mubiaoweizhi = m;
}
}
block1 = Convert.ToInt32(disk_.buffer1[mubiaoweizhi * 16 + 11]);
block2 = Convert.ToInt32(disk_.buffer1[mubiaoweizhi * 16 + 12]);
}
disk_.readblock1(block1);
mubiaoweizhi = -1;
for (int i = 0; i < 8; i++)
{
if (Convert.ToInt32(disk_.buffer1[i * 16 + 15]) == 0)
mubiaoweizhi = i;
}
if (mubiaoweizhi == -1)
{
disk_.readblock1(block2);
for (int i = 0; i < 8; i++)
{
if (Convert.ToInt32(disk_.buffer1[i * 16 + 15]) == 0)
mubiaoweizhi = i;
}
for (int g = 0; g < 16; g++)
{
disk_.buffer1[mubiaoweizhi * 16 + g] = fcbinfo[g];
}
disk_.writeblock1(block2);
}
else
{
for (int g = 0; g < 16; g++)
{
disk_.buffer1[mubiaoweizhi * 16 + g] = fcbinfo[g];
}
disk_.writeblock1(block1);
}
#endregion
}
else
{
string filename = "";
string extname = "";
splitfilename(pathfrom[pathfrom.Length - 1], ref filename, ref extname);
int mubiaoweizhi = -1;
if (pathfrom[0] == "C")
{
disk_.diskfilename = disk_.diskfile[0];
}
else if (pathfrom[0] == "D")
{
disk_.diskfilename = disk_.diskfile[1];
}
else
{
disk_.diskfilename = disk_.diskfile[0];
}
int block1 = 1;
int block2 = 2;
for (int i = 0; i < pathfrom.Length - 2; i++)
{
disk_.readblock1(block1);
string[] name = new string[8];
for (int n = 0; n < 8; n++)
{
name[n] = Convert.ToString(Convert.ToChar(disk_.buffer1[n * 16 + 0])) + Convert.ToString(Convert.ToChar(disk_.buffer1[n * 16 + 1])) + Convert.ToString(Convert.ToChar(disk_.buffer1[n * 16 + 2])) + Convert.ToString(Convert.ToChar(disk_.buffer1[n * 16 + 3])) + Convert.ToString(Convert.ToChar(disk_.buffer1[n * 16 + 4])) + Convert.ToString(Convert.ToChar(disk_.buffer1[n * 16 + 5]));
name[n] = name[n].Trim();
}
for (int m = 0; m < 8; m++)
{
if (name[m] == pathfrom[i + 1])
mubiaoweizhi = m;
}
if (mubiaoweizhi == -1)
{
disk_.readblock1(block2);
for (int n = 0; n < 8; n++)
{
name[n] = Convert.ToString(Convert.ToChar(disk_.buffer1[n * 16 + 0])) + Convert.ToString(Convert.ToChar(disk_.buffer1[n * 16 + 1])) + Convert.ToString(Convert.ToChar(disk_.buffer1[n * 16 + 2])) + Convert.ToString(Convert.ToChar(disk_.buffer1[n * 16 + 3])) + Convert.ToString(Convert.ToChar(disk_.buffer1[n * 16 + 4])) + Convert.ToString(Convert.ToChar(disk_.buffer1[n * 16 + 5]));
name[n] = name[n].Trim();
}
for (int m = 0; m < 8; m++)
{
if (name[m] == pathfrom[i + 1])
mubiaoweizhi = m;
}
}
block1 = Convert.ToInt32(disk_.buffer1[mubiaoweizhi * 16 + 11]);
block2 = Convert.ToInt32(disk_.buffer1[mubiaoweizhi * 16 + 12]);
}
string[] u = new string[8];
string[] v = new string[8];
disk_.readblock1(block1);
//mubiaoweizhi = -1;
byte[] fcbinfo = new byte[16];
byte[] buffinfo = new byte[128];
for (int i = 0; i < 8; i++)
{
if (Convert.ToInt32(disk_.buffer1[i * 16 + 15]) == 1)
{
u[i] = Convert.ToString(Convert.ToChar(disk_.buffer1[i * 16 + 0])) + Convert.ToString(Convert.ToChar(disk_.buffer1[i * 16 + 1])) + Convert.ToString(Convert.ToChar(disk_.buffer1[i * 16 + 2])) + Convert.ToString(Convert.ToChar(disk_.buffer1[i * 16 + 3])) + Convert.ToString(Convert.ToChar(disk_.buffer1[i * 16 + 4])) + Convert.ToString(Convert.ToChar(disk_.buffer1[i * 16 + 5]));
v[i] = Convert.ToString(Convert.ToChar(disk_.buffer1[i * 16 + 6])) + Convert.ToString(Convert.ToChar(disk_.buffer1[i * 16 + 7])) + Convert.ToString(Convert.ToChar(disk_.buffer1[i * 16 + 8]));
u[i] = u[i].Trim();
v[i] = v[i].Trim();
if (u[i] == filename && v[i] == extname)
{
for (int z = 0; z < 16; z++)
{
fcbinfo[z] = disk_.buffer1[i * 16 + z];
}
disk_.readblock1(Convert.ToInt32(fcbinfo[11]));
buffinfo = disk_.buffer1;
}
}
}
disk_.readblock1(block2);
//mubiaoweizhi = -1;
for (int i = 0; i < 8; i++)
{
if (Convert.ToInt32(disk_.buffer1[i * 16 + 15]) == 1)
{
u[i] = Convert.ToString(Convert.ToChar(disk_.buffer1[i * 16 + 0])) + Convert.ToString(Convert.ToChar(disk_.buffer1[i * 16 + 1])) + Convert.ToString(Convert.ToChar(disk_.buffer1[i * 16 + 2])) + Convert.ToString(Convert.ToChar(disk_.buffer1[i * 16 + 3])) + Convert.ToString(Convert.ToChar(disk_.buffer1[i * 16 + 4])) + Convert.ToString(Convert.ToChar(disk_.buffer1[i * 16 + 5]));
v[i] = Convert.ToString(Convert.ToChar(disk_.buffer1[i * 16 + 6])) + Convert.ToString(Convert.ToChar(disk_.buffer1[i * 16 + 7])) + Convert.ToString(Convert.ToChar(disk_.buffer1[i * 16 + 8]));
u[i] = u[i].Trim();
v[i] = v[i].Trim();
if (u[i] == filename && v[i] == extname)
{
for (int z = 0; z < 16; z++)
{
fcbinfo[z] = disk_.buffer1[i * 16 + z];
}
disk_.readblock1(Convert.ToInt32(fcbinfo[11]));
buffinfo = disk_.buffer1;
}
}
}
///////////////////////////////////////////////////////////////////
if (pathto[0] == "C")
{
disk_.diskfilename = disk_.diskfile[0];
}
else if (pathto[0] == "D")
{
disk_.diskfilename = disk_.diskfile[1];
}
else
{
disk_.diskfilename = disk_.diskfile[0];
}
currentdir = command[2];
createfile(pathfrom[pathfrom.Length - 1]);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -