6、js中的中文显示到页面上时,一般都会乱码,解决办法:
<script type="text/javascript" src="myjs.js" charset="gb2312"></script>
就是在引用 的时候加上charset。gb2312如果不行,可以换用其它的试试,如:utf-8等
7、储存上传的文件时,为了减少各种可能的冲突,最好是用当前时间(精确到分或秒)加上用户的id生成一个新的文件名,再在数据库中存储原文件名和新文件名。
8、图片上传。
有时候用户上传的图片会很大,假设我们已经设了能上传的图片最大是2M,那么用户可能大部分都传1M多的图片,这样的话,如果加载的图片多了,页面打开就会很慢。一个解决办法是把上传的图片压缩成位图。我自己封装了一个函数,以后做项目可以用得上:
/// <summary>
/// 压缩保存文件
/// </summary>
/// <param name="fileUpload">System.Web.UI.WebControls.FileUpload组件</param>
/// <param name="filter">用于过滤字符串,如string[] allowExtensions = { "bmp", "jpg", "jpeg", "png", "gif", "tiff" };</param>
/// <param name="fileSize">文件不能超过这个大小,单位byte</param>
/// <param name="webpath">图片储存的文件夹路径!别以'/'结尾!</param>
/// <param name="userId">用户名,用于重命文件名</param>
/// <returns>新的文件名</returns>
public string SaveSmallUploadFile(System.Web.UI.WebControls.FileUpload fileUpload, string[] filter,int fileSize, string webpath, int userId,int width,int height)
{
string filename = fileUpload.FileName;
string newext;
//文件大小
int length = fileUpload.PostedFile.ContentLength;
if (CheckFileFilter(filename, filter, out newext))
throw new Exception("上传的文件格式不正确!");
else if(length >= fileSize)
{
throw new Exception("上传的文件太大,文件大小必须小于"+fileSize/1000);
}
string path = System.Web.HttpContext.Current.Server.MapPath(webpath);
if (!System.IO.Directory.Exists(path))
{
System.IO.Directory.CreateDirectory(path);
}
filename = GetNameWithDate() + "_" + userId + "." + newext;
string str = System.Web.HttpContext.Current.Server.MapPath(webpath +"\\"+ filename + "_bak." + newext);
fileUpload.SaveAs(str);
//创建一个bitmap类型的bmp变量来读取文件。
System.Drawing.Bitmap bmp = new System.Drawing.Bitmap(str);
//新建第二个bitmap类型的bmp2变量,我这里是根据我的程序需要设置的。
System.Drawing.Bitmap bmpNew = new System.Drawing.Bitmap(width, height, System.Drawing.Imaging.PixelFormat.Format16bppRgb555);
//将第一个bmp拷贝到bmp2中
System.Drawing.Graphics draw = System.Drawing.Graphics.FromImage(bmpNew);
//设置背景透明,当然也可以设成其它颜色
draw.Clear(System.Drawing.Color.Transparent);
draw.DrawImage(bmp, 0, 0, width, height);
filename = filename.Substring(0,filename.LastIndexOf(".")) + ".jpg";//可以在这里改新文件的格式,这里改了,下面的下面这句也要改
string filePath = webpath + "/" + filename;
bmpNew.Save(System.Web.HttpContext.Current.Server.MapPath(filePath), System.Drawing.Imaging.ImageFormat.Jpeg);
draw.Dispose();
bmp.Dispose();//释放bmp文件资源
FileInfo file = new FileInfo(str);
if (file.Exists) file.Delete();
return filename;
}
/// <summary>
/// 将当前时间形成字符串以用作文件名
/// </summary>
/// <returns></returns>
public static string GetNameWithDate()
{
return DateTime.Now.ToString("yyMMddhhmmssfff");
}
/// <summary>
/// 检查文件后缀是否与filter中匹配
/// </summary>
/// <param name="filename">文件名称</param>
/// <param name="filter">匹配类型</param>
/// <returns></returns>
private static bool CheckFileFilter(string filename, string[] filter, out string ext)
{
bool isFilter = true;
int i = filename.LastIndexOf(".");
ext = filename.Substring(i + 1).ToLower();
if (filter != null)
{
for (i = 0; i < filter.Length; i++)
{
if (ext == filter[i].ToLower())
{
isFilter = false;
break;
}
}
}
return isFilter;
}
分享到:
相关推荐
总的来说,这个C#实现的SQL格式化功能对于.NET开发者来说是一个实用的工具,它能够提高SQL代码的可读性,降低维护成本,同时避免了引入额外的依赖库,简化了项目的构建和部署流程。在团队合作和大型项目中,这样的...
总结起来,这个C#图书馆管理系统结合了C#强大的编程能力和SQL Server高效的数据管理能力,提供了全面的图书和读者管理服务。通过良好的设计和实现,系统不仅满足了基本的图书借阅需求,还具备了良好的可扩展性和维护...
这个PPT可能涵盖了项目背景、设计决策、技术实现细节以及可能遇到的问题和解决方案。 综合以上信息,我们可以预期这个QQ项目可能包含以下几个关键知识点: 1. **.NET框架**:理解.NET框架的架构,包括CLR(Common ...
在IT领域,尤其是在数据库管理中,SQL Server的安装过程可能会遇到一些问题,比如安装挂起。这通常是由于网络中断、资源不足或者系统错误导致的。为了解决这个问题,开发者经常需要编写专用工具来处理这些挂起的安装...
在开始之前,我们需要对以下几个概念有一定的了解: 1. **ListBox 控件**:ListBox 是 Windows Forms 应用程序中常用的一种控件,用于显示项目列表。用户可以选择列表中的一个或多个项目。 2. **文件系统操作**:...
同时,错误处理和日志记录也是必不可少的部分,以确保系统在遇到问题时能够提供有效的反馈和调试信息。 总的来说,这款宾馆管理系统C#项目源代码展示了如何利用C#语言和相关技术构建一个功能完善的管理工具。通过...
7. 源码和实验报告:提供源码意味着用户可以查看和学习系统的实现细节,而实验报告通常会详细记录设计思路、技术选型、遇到的问题及解决方法,是学习和评估项目的重要参考。 综上所述,【C#学生信息管理系统】是一...
综合以上信息,这个项目涵盖了以下几个C#编程和图书馆管理系统的知识点: 1. **C#基础**:包括类、对象、方法、事件、属性、继承、多态等面向对象编程概念。 2. **数据库连接与操作**:利用ADO.NET或Entity ...
在本项目中,我们将深入探讨如何使用C#和ASP.NET技术来实现一个类似于“百度知道”的在线问答平台。这个平台的核心功能包括用户管理、问题发布、答案提交、问题关闭、最佳答案选择、悬赏机制以及搜索功能。让我们...
综上所述,这个C#药店管理系统结合了C#的强大功能和数据库的高效数据处理,实现了药店业务流程的自动化,提升了药店管理的效率和准确性。对于学习C#编程或者药店管理系统的开发者来说,这份源代码是一个宝贵的参考...
此外,为了提高用户体验,我们还可以实现一些额外的功能,如错误处理和异常处理,确保在遇到问题时能给出适当的提示;或者使用验证控件,确保用户输入的数据格式正确。同时,考虑到性能,可以采用分页查询技术,避免...
【标题】"试题库管理系统的设计(C#)"是一个关于利用C#编程语言开发的全面的试题库管理系统的项目。这个系统旨在高效地存储、管理和检索各类考试试题,为教育机构或个人提供便捷的试题资源管理解决方案。 【描述】...
学生考试管理系统的核心功能通常包括以下几个方面: 1. 学生管理:系统应能进行学生信息的录入、修改、查询等操作,包括姓名、学号、班级等关键信息的管理。 2. 考试安排:管理考试的时间、地点、科目等信息,并...
在C#中实现一个蜘蛛程序,主要涉及到以下几个关键知识点: 1. **HTTP请求与响应**:网络爬虫首先需要向目标网站发送HTTP请求,获取服务器返回的HTML响应。这通常使用`System.Net.Http.HttpClient`类来完成。你需要...
使用C#发送电子邮件涉及以下几个步骤: - 创建MailMessage对象,设置发件人、收件人、抄送人、密送人、邮件主题和正文。 - 如果需要添加附件,可以使用Attachment类创建附件对象并添加到MailMessage的Attachments...
【标题】"毕业答辩-ASP.NET SQL蒋和平_办公自动化管理系统的设计与实现(源代码论文).rar" 提供了一个关于毕业设计项目的详细资料,其中涵盖了ASP.NET技术和SQL数据库在构建办公自动化管理系统中的应用。这个系统旨在...
创建安装程序的过程主要包括以下几个步骤: 1. **选择合适的工具**:可以使用Inno Setup、NSIS或WiX等工具来创建安装程序。这些工具提供了丰富的功能和选项,可以根据需求进行选择。 2. **准备安装目录**: - 将您...
项目的核心知识点主要集中在以下几个方面: 1. **C#编程基础**:这是整个项目的基础,包括变量、数据类型、控制结构、函数、类和对象等概念。开发者需要运用这些基础知识来编写程序的各个模块。 2. **ASP.NET Web...
5. **错误处理和异常安全**:源码中应包含适当的错误处理代码,确保程序在遇到问题时能够优雅地处理,防止程序崩溃。 6. **事件驱动编程**:C#的事件和委托机制使得用户界面的交互更加直观,例如点击按钮触发相应的...
本文将深入探讨如何利用C#编程语言来构建这样一个系统,并重点关注其核心功能和实现细节。 首先,C#是一种面向对象的编程语言,由微软公司开发,广泛应用于Windows平台的软件开发,尤其在.NET框架下表现出强大的...