用户名空白检测+修复一重大bug

This commit is contained in:
2026-02-24 20:09:10 +08:00
parent 0386511a00
commit e0e7da7ac2
5 changed files with 31 additions and 20 deletions

View File

@@ -1 +1 @@
2026-02-19 17:35:30 2026-02-24 20:06:20

View File

@@ -1 +1 @@
0147679 0386511

View File

@@ -308,7 +308,11 @@ namespace CMLeonOS
{ {
if (File.Exists(fullPath)) if (File.Exists(fullPath))
{ {
return File.ReadAllText(fullPath); using (FileStream fs = new FileStream(fullPath, FileMode.Open, FileAccess.Read))
using (StreamReader sr = new StreamReader(fs))
{
return sr.ReadToEnd();
}
} }
else else
{ {
@@ -389,15 +393,15 @@ namespace CMLeonOS
return currentDirectory; return currentDirectory;
} }
char[] invalidChars = { '<', '>', ':', '"', '|', '?', '*' }; //char[] invalidChars = { '<', '>', ':', '"', '|', '?', '*' };
foreach (char c in invalidChars) //foreach (char c in invalidChars)
{ //{
if (path.Contains(c.ToString())) // if (path.Contains(c.ToString()))
{ // {
Console.WriteLine($"Error: Invalid character in path: '{c}'"); // Console.WriteLine($"Error: Invalid character in path: '{c}'");
return currentDirectory; // return currentDirectory;
} // }
} //}
if (path.Contains("//") || path.Contains("\\\\")) if (path.Contains("//") || path.Contains("\\\\"))
{ {

View File

@@ -55,7 +55,7 @@ namespace CMLeonOS
private static bool ContainsInvalidChars(string input) private static bool ContainsInvalidChars(string input)
{ {
char[] invalidChars = { '<', '>', ':', '"', '|', '?', '*', '/', '\\' }; char[] invalidChars = { '<', '>', ':', '"', '|', '?', '*', '/', '\\', ' ' };
foreach (char c in invalidChars) foreach (char c in invalidChars)
{ {
if (input.Contains(c.ToString())) if (input.Contains(c.ToString()))
@@ -405,7 +405,7 @@ namespace CMLeonOS
{ {
CMLeonOS.UI.TUIHelper.SetColors(global::System.ConsoleColor.Red, global::System.ConsoleColor.Black); CMLeonOS.UI.TUIHelper.SetColors(global::System.ConsoleColor.Red, global::System.ConsoleColor.Black);
global::System.Console.SetCursorPosition(7, 24); global::System.Console.SetCursorPosition(7, 24);
global::System.Console.Write("Username contains invalid characters: < > : \" | ? / \\ "); global::System.Console.Write("Username contains invalid characters: < > : \" | ? * / \\ space");
CMLeonOS.UI.TUIHelper.SetColors(global::System.ConsoleColor.White, global::System.ConsoleColor.Black); CMLeonOS.UI.TUIHelper.SetColors(global::System.ConsoleColor.White, global::System.ConsoleColor.Black);
global::System.Console.SetCursorPosition(7, 7); global::System.Console.SetCursorPosition(7, 7);
global::System.Console.Write("Username: "); global::System.Console.Write("Username: ");

View File

@@ -47,15 +47,22 @@ namespace CMLeonOS
if (value != null && fileSystem != null) if (value != null && fileSystem != null)
{ {
string fullPath = fileSystem.GetFullPath(value); try
if (System.IO.File.Exists(fullPath))
{ {
string fullPath = fileSystem.GetFullPath(value);
string text = fileSystem.ReadFile(fullPath); string text = fileSystem.ReadFile(fullPath);
text = text.Replace("\r\n", "\n");
lines.AddRange(text.Split('\n')); if (!string.IsNullOrEmpty(text))
{
text = text.Replace("\r\n", "\n");
lines.AddRange(text.Split('\n'));
}
else
{
lines.Add(string.Empty);
}
} }
else catch
{ {
lines.Add(string.Empty); lines.Add(string.Empty);
} }