亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何做到通過文本框獲取數據的int變量在txt日志文件中以雙引號格式顯示?

如何做到通過文本框獲取數據的int變量在txt日志文件中以雙引號格式顯示?

C#
蠱毒傳說 2021-11-28 16:04:06
我嘗試編寫一個日志文件并創建了一個包含兩個文本框和一個按鈕的桌面應用程序。我希望 int 變量在 txt 文件中以雙引號樣式顯示。我試圖在賦值過程中將 $"{textBox1.Text}\"" 轉換為 int 但無濟于事 - 得到格式異常錯誤。那么如何在 txt 文件中將 int 變量顯示為雙標記?string username =  $"\"{textBox1.Text}\"";File.AppendAllText(@"C:\Users\Cavid\Desktop\LogFiles\" +DateTime.Now.ToString("dd.MM.yyyy") + ".txt", DateTime.Now.ToShortDateString() + " " + DateTime.Now.ToShortTimeString() + " " +username+ " has typed as username \r\n");int password = Convert.ToInt32($"\"{textBox1.Text}\"");File.AppendAllText(@"C:\Users\Cavid\Desktop\LogFiles\"+DateTime.Now.ToString("dd.MM.yyyy") + ".txt", DateTime.Now.ToShortDateString() + " " + DateTime.Now.ToShortTimeString() + " " +password+ " has typed as password\r\n");
查看完整描述

3 回答

?
幕布斯7119047

TA貢獻1794條經驗 獲得超8個贊

我只是想以雙引號格式保留變量


抱歉,您似乎對變量和數據類型的工作方式有錯誤的看法。整數變量只是一塊沒有引號或其他格式的 32 位內存。


您根本無法將雙引號文本分配或解析(沒有自定義解析字符串)到整數。停止嘗試。改用這個:


if (int.TryParse(textBox1.Text, out int password))

{

    // text is a valid int, use `password`

}


查看完整回答
反對 回復 2021-11-28
?
aluckdog

TA貢獻1847條經驗 獲得超7個贊

你真的想密碼是整數而已?用戶只允許有123密碼,但不能,比如說,a;sldf123_'vdkdm?更自然的選擇是獲取密碼(讓它在textBox2.Text),因為它是:


 string fileName = Path.Combine(

   @"C:\Users\Cavid\Desktop\LogFiles",             // Directory

   $"{DateTime.Now.ToString("dd.MM.yyyy")}.txt");  // File Name


 // Do not call DateTime.Now twice: you may have different times for username and password

 DateTime moment = DateTime.Now;

 string prefix = $"{moment.ToShortDateString()} {moment.ToShortDateString()}"; 


 // It seems you want textBox2.Text, not textBox1.Text as a password (typo?) 

 string[] lines = new string[] {

   $"{prefix} \"{textBox1.Text}\" has typed as username",

   $"{prefix} \"{textBox2.Text}\" has typed as password",

 };


 // Append file once

 File.AppendAllLines(fileName, lines);

如果您堅持只使用整數作為密碼,請添加int.Parse或int.TryParse:


 ...


 string[] lines = new string[] {

   $"{prefix} \"{textBox1.Text}\" has typed as username",

   $"{prefix} \"{int.Parse(textBox2.Text)}\" has typed as password",

 };


 ...


查看完整回答
反對 回復 2021-11-28
?
心有法竹

TA貢獻1866條經驗 獲得超5個贊

要添加雙引號,請使用以下代碼:

字符串用戶名 = textBox1.Text; //添加雙引號

        username = "\"" + username + "\"";
        //you can test it as shown below

File.WriteAllText(@"C:\text2.txt", 用戶名);

對于錯誤,正如其他人提到的那樣,您無法將所有 string s 轉換為整數(例如,如果您的用戶名是字母數字)


查看完整回答
反對 回復 2021-11-28
  • 3 回答
  • 0 關注
  • 222 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號