# C#.Tostring(?) 這是變數轉換成string的方法,他可以換成很多,我在這裡整理 >ChatGPT提供 ## 1️⃣ 數字格式 | 格式 | 說明 | 範例 | 結果 | |---------|-----------------------|-------------------------------|--------------------| | "F1" | 固定小數點格式(1 位) | 1234.5678.ToString("F1") | 1234.6 | | "F3" | 固定小數點格式(3 位) | 1234.5678.ToString("F3") | 1234.568 | | "C5" | 貨幣格式(5 位小數) | 1234.5678.ToString("C5") | $1,234.56780 | | "C0" | 貨幣格式(無小數) | 1234.5678.ToString("C0") | $1,235 | | "N" | 千分位數字(預設 2 位小數) | 1234.5678.ToString("N") | 1,234.57 | | "N1" | 千分位數字(1 位小數) | 1234.5678.ToString("N1") | 1,234.6 | | "P" | 百分比格式(預設 2 位小數) | 123456.78.ToString("P") | 123456.78% | | "P1" | 百分比格式(1 位小數) | 123456.78.ToString("P1") | 123456.8% | | "E" | 科學記數法 | 1234.5678.ToString("E") | 1.234568E+03 | | "E4" | 科學記數法(4 位小數) | 1234.5678.ToString("E4") | 1.2346E+03 | | "G" | 一般格式(自動選擇適合的格式) | 1234.5678.ToString("G") | 1234.5678 | ### 不同國家價錢寫法 ```csharp= using System; using System.Globalization; class Program { static void Main() { decimal price = 12345.67m; Console.WriteLine(price.ToString("C", new CultureInfo("en-US"))); // 🇺🇸 美元 Console.WriteLine(price.ToString("C", new CultureInfo("zh-TW"))); // 🇹🇼 新台幣 Console.WriteLine(price.ToString("C", new CultureInfo("ja-JP"))); // 🇯🇵 日圓 Console.WriteLine(price.ToString("C", new CultureInfo("fr-FR"))); // 🇫🇷 歐元 Console.WriteLine(price.ToString("C", new CultureInfo("ko-KR"))); // 🇰🇷 韓元 } } ``` ## 2️⃣ 日期與時間格式 | 格式 | 說明 | 範例 | 結果 | |---------------|-----------------------------|----------------------------------------|---------------------------------| | "d" | 短日期格式 | "d" | 2025/2/18 | | "D" | 長日期格式 | "D" | 2025年2月18日 星期二 | | "t" | 短時間格式 | "t" | 14:05 | | "T" | 長時間格式 | "T" | 14:05:32 | | "f" | 完整日期 + 短時間 | "f" | 2025年2月18日 14:05 | | "F" | 完整日期 + 長時間 | "F" | 2025年2月18日 星期二 14:05:32 | | "g" | 一般日期 + 短時間 | "g" | 2025/2/18 14:05 | | "G" | 一般日期 + 長時間 | "G" | 2025/2/18 14:05:32 | | "M" / "m" | 月份 + 日期 | "M" | 2月18日 | | "Y" / "y" | 年份 + 月份 | "Y" | 2025年2月 | | "yyyy-MM-dd" | 自訂日期格式 | "yyyy-MM-dd" | 2025-02-18 | | "HH:mm:ss" | 24 小時制時間格式 | "HH:mm:ss" | 14:05:32 | ## 3️⃣ 自訂格式 | 格式 | 說明 | 範例 | 結果 | | -------- | ----------------------------- | ---------------------------------- | ----------- | | "0.00" | 小數點後 2 位,不足補 0 | 1234.5678.ToString("0.00") | 1234.57 | | "#.##" | 最多 2 位小數,不足不補 0 | 1234.5678.ToString("#.##") | 1234.57 | | "00000" | 固定 5 位數,不足補 0 | 1234.ToString("00000") | 01234 | | "#,#" | 加上千分位符號 | 1234.ToString("#,#") | 1,234 | | "#,#.##" | 千分位 + 兩位小數 | 1234.5678.ToString("#,#.##") | 1,234.57 | | "#%" | 百分比(不自動 x100) | 1234.5678.ToString("#%") | 123457% |