C# string.Format 抛出异常
C# string.Format throws exception
我正在尝试使用 string.Format
格式化 string
,但它抛出异常。
var format = "public {0} {1} { get; {2}set; }";
var arg0 = "long";
var arg1 = "Ticks";
var formatedString = string.Format(format, arg0, arg1, null);
最后一行抛出 System.FormatException
并包含以下详细信息:
System.FormatException was unhandled
HResult=-2146233033
Message=Input string was not in a correct format.
Source=mscorlib
StackTrace:
at System.Text.StringBuilder.AppendFormatHelper(IFormatProvider provider, String format, ParamsArray args)
at System.String.FormatHelper(IFormatProvider provider, String format, ParamsArray args)
at System.String.Format(String format, Object arg0, Object arg1, Object arg2)
at ConsoleApplication1.Program.Main(String[] args) in E:\lab\cheque\helloworldprism\ConsoleApplication1\ConsoleApplication1\Program.cs:line 11
at System.AppDomain._nExecuteAssembly(RuntimeAssembly assembly, String[] args)
at System.AppDomain.ExecuteAssembly(String assemblyFile, Evidence assemblySecurity, String[] args)
at Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly()
at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Threading.ThreadHelper.ThreadStart()
InnerException:
它不喜欢 { get; {2}set; }
中的 {
和 }
你必须使用其中两个来转义大括号
var format = "public {0} {1} {{ get; {2}set; }}";
您需要转义您的 curly-braces,使用另一个大括号将转义它。
var format = "public {0} {1} {{ get; {2}set; }}";
我正在尝试使用 string.Format
格式化 string
,但它抛出异常。
var format = "public {0} {1} { get; {2}set; }";
var arg0 = "long";
var arg1 = "Ticks";
var formatedString = string.Format(format, arg0, arg1, null);
最后一行抛出 System.FormatException
并包含以下详细信息:
System.FormatException was unhandled
HResult=-2146233033
Message=Input string was not in a correct format.
Source=mscorlib
StackTrace:
at System.Text.StringBuilder.AppendFormatHelper(IFormatProvider provider, String format, ParamsArray args)
at System.String.FormatHelper(IFormatProvider provider, String format, ParamsArray args)
at System.String.Format(String format, Object arg0, Object arg1, Object arg2)
at ConsoleApplication1.Program.Main(String[] args) in E:\lab\cheque\helloworldprism\ConsoleApplication1\ConsoleApplication1\Program.cs:line 11
at System.AppDomain._nExecuteAssembly(RuntimeAssembly assembly, String[] args)
at System.AppDomain.ExecuteAssembly(String assemblyFile, Evidence assemblySecurity, String[] args)
at Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly()
at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Threading.ThreadHelper.ThreadStart()
InnerException:
它不喜欢 { get; {2}set; }
中的 {
和 }
你必须使用其中两个来转义大括号
var format = "public {0} {1} {{ get; {2}set; }}";
您需要转义您的 curly-braces,使用另一个大括号将转义它。
var format = "public {0} {1} {{ get; {2}set; }}";