在保存到我的电脑之前,我写了这段代码来设置文件名:
string name_file = System.IO.Path.GetFileName(openFileDialog1.FileName).Split('.')[0]
+ blYear.SelectedValue == null ? "2010" : blYear.SelectedValue
+ ".xlsx";
Run Code Online (Sandbox Code Playgroud)
我跟踪代码并查看结果:
System.IO.Path.GetFileName(openFileDialog1.FileName).Split('.')[0] "PSIQ DIGITEL" string
blYear.SelectedValue null object
name_file ".xlsx" string
Run Code Online (Sandbox Code Playgroud)
我做错了什么?为什么会name_file丢失原始值?另外,对于同样的问题,我如何删除最终file_name之间的空格,比如示例中的"PSIQ DIGITEL"应为"PSIQ-DIGITEL".
编辑
如果我删除这部分,+ blYear.SelectedValue == null ? "2010" : blYear.SelectedValue那么文件名取值很好,有什么不对?
你的意思是这个吗?
((System.IO.Path.GetFileName(openFileDialog1.FileName).Split('.')[0] + blYear.SelectedValue) == null ? "2010" : blYear.SelectedValue) + ".xlsx"
Run Code Online (Sandbox Code Playgroud)
要么
(System.IO.Path.GetFileName(openFileDialog1.FileName).Split('.')[0] + blYear.SelectedValue) == null ? "2010" : (blYear.SelectedValue + ".xlsx")
Run Code Online (Sandbox Code Playgroud)
要么
System.IO.Path.GetFileName(openFileDialog1.FileName).Split('.')[0] + (blYear.SelectedValue == null ? "2010" : blYear.SelectedValue) + ".xlsx"
Run Code Online (Sandbox Code Playgroud)
要么 ?
使用括号告诉编译器你的意思,它不关注换行符和缩进.
| 归档时间: |
|
| 查看次数: |
98 次 |
| 最近记录: |