判断字符是否符合.*形式
tbName 文件名tbExtension 文件扩展名if(tbName.Text.Trim()!=""){ if(!tbExtension.Text.Contains(".")) { 报错 }}目前偶就只能判断在字符串包含. 就通过 .1 1.1 这种也可以通过但是偶要判断的是.*的形式类似.doc .txt .xml等一切合格的类型应该怎么写啊??
using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace ConsoleApplication1{ class Program { static void Main(string[] args) { string s = "asd.d"; int a=0,b=0; foreach (char i in s) { if (i == '.') a++; else if (a == 1) b++; } if (b != 0) Console.WriteLine("通过"); } }}
[解决办法]
if (tbName.Text.Trim() != "") { string fileName = tbName.Text.Trim(); string[] fileNames = fileName.Split('.'); if (fileNames.Length == 2) { if (fileNames[0] == "" || fileNames[1] == "") { err } } else { err } }
[解决办法]
我比较赞成先获得最后一个.字符之后的字符串再进行格式判断
这样的话就不存在欺骗的问题,安全性提高很多
像上面的,如果我知道源代码的话,我很容易就可以上传一个aspx文件进去控制服务器