日期:2014-05-18 浏览次数:20943 次
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文件进去控制服务器