//下面代码中的主要是为了将数据绑定到repeater上,同时实现文件的下载,其中dr[]中的路径绑定的是下载路径,用到了sharepoint中自带的download.aspx下载页面,只要将文件的URL赋值给sourceurl即可,但是我前台用的是<a>标签的href来导向下载页面的,如果你的文件名是中文命名,而且路径是在后台传的值,在前台的进行的链接,那么如果你用的是IE浏览器,那么下载时就无法成功,因为IE无法将路径进行编码,下载页面无法识别中文名,所以这时就必须先编码再链接,如下面的带有下滑线的代码,就是编码的过程。

if (files != null)
{
foreach (SPFile file in files)
{
DataRow dr = dt.NewRow();
if (file.Item["IsShow"].ToString() == "True"&&file.Item["_ModerationStatus"].ToString() == "")
{ dr[] = "_layouts/images/" + file.IconUrl;
dr[] = file.Name;
dr[] = BussinessUtil.getDownloadType(file);
string fileUrl = file.Url;
string sourceUrl = fileUrl.Substring(0, fileUrl.LastIndexOf("/")+1) + HttpUtility.UrlEncode(fileUrl.Substring(fileUrl.LastIndexOf("/") + 1));//主要是对中文路径编码
dr[] = SPContext.Current.Web.Url + "/_layouts/15/download.aspx?sourceurl=" + sourceUrl;
dr[] = file.TimeCreated.ToShortDateString();
dr[] = file.UniqueId;
dt.Rows.Add(dr); } }
} 希望对您有所帮助!

sharepoint 中用自带的download.aspx实现文件的下载,中文文件名编码的问题的更多相关文章

  1. 文件打包,下载之使用PHP自带的ZipArchive压缩文件并下载打包好的文件

    总结:                                                          使用PHP下载文件的操作需要给出四个header(),可以参考我的另一篇博文: ...

  2. SharePoint 2010 ——自定义上传页面与多文件上传解决方案

    最近项目遇到一个很麻烦的问题,原以为很容易解决,结果搞了那么久,先开个头,再慢慢写 SharePoint 2010 ——自定义上传页面与多文件上传解决方案 1.创建Sharepoint空白项目,创建应 ...

  3. aspx文件、aspx.cs文件、aspx.designer.cs文件之讲解

    .aspx文件:(页面)书写页面代码.存储的是页面design代码.只是放各个控件的代码,处理代码一般放在.cs文件中. .aspx.cs文件:(代码隐藏页)书写类代码.存储的是程序代码.一般存放与数 ...

  4. 2014-07-23 利用ASP.NET自带控件实现单文件上传与下载

    效果图 上传文件页面: 下载文件页面:  1.母版页site.Master <%@ Master Language="C#" AutoEventWireup="tr ...

  5. 导出带图片的Excel——OOXML文件分析

    需求: 普通js导出文件excel具有兼容性问题,通过js-xsl导出文件API未找到导出图片的方案,实例过少,因此针对07年后以.xlsx后缀的excel文件,通过修改后缀.zip参考文件模板来实现 ...

  6. 有关带scala版本的eclipse4.7的下载

    有关带scala版本的eclipse4.7的下载, 你可以直接去: http://scala-ide.org/download/sdk.html ​ 下载下来后是:scala-SDK-4.7.0-vf ...

  7. 赞!带进度条的 jQuery 文件拖放上传插件

    jQuery File Uploader 是一个 jQuery 文件拖放上传插件,包括 Ajax 上传和进度条效果.作者编写这个插件的想法是要保持它非常简单,不像其他的插件,很多的标记,并提供一些 H ...

  8. java生成带html样式的word文件

    参考:http://blog.csdn.net/xiexl/article/details/6652230 最近在项目中需要将通过富文本编辑器处理过的文字转换为Word,查了很久,大家通常的解决办法是 ...

  9. T4 模板自动生成带注释的实体类文件

    T4 模板自动生成带注释的实体类文件 - 只需要一个 SqlSugar.dll 生成实体就是这么简单,只要建一个T4文件和 文件夹里面放一个DLL. 使用T4模板教程 步骤1 创建T4模板 如果你没有 ...

随机推荐

  1. Hibernate入门(1)-第一个Hibernate程序

    Hibernate入门(1)-第一个Hibernate程序 Hibernate是最著名的ORM工具之一,本系列文章主要学习Hibernate的用法,不涉及Hibernate的原理.本文介绍第一个Hib ...

  2. UVa 1629 Cake slicing (记忆化搜索)

    题意:一个矩形蛋糕上有好多个樱桃,现在要做的就是切割最少的距离,切出矩形形状的小蛋糕,让每个蛋糕上都有一个樱桃,问最少切割距离是多少. 析:很容易知道是记忆化搜索,我们用dp[u][d][l][r]来 ...

  3. [转载代码]VB.NET 中查询 Linq to SQL 执行时的SQL语句

    在搜索使用LINQ TO SQL 添加数据后获得自增长ID的方法时,发现C#可以使用DebuggerWritter把使用Linq to SQL执行的SQL语句显示到即时窗口,于是在网上搜索到在VB.N ...

  4. hadoop2.1.0编译安装教程

    由于现在hadoop2.0还处于beta版本,在apache官方网站上发布的beta版本中只有编译好的32bit可用,如果你直接下载安装在64bit的linux系统的机器上,运行会报一个INFO ut ...

  5. Usage of readonly and const

    Many new learners can not make sure the usage scenarios of readonly and const keywords. In my opinio ...

  6. 哥也能写KMP了——实现strstr()

    经过上次去面试,面试官要求实现strstr(),当场就蒙了.这个题目是模式匹配问题,<算法导论>里列出了几种字符串匹配算法: 朴素算法 |  Rabin-Karp | 有限自动机算法 | ...

  7. cocos2d-x 图形绘制

    转自:http://blog.csdn.net/zhy_cheng/article/details/8480048 图形绘制的话,在cocos2d-x自带的TestCpp里有,包括绘制点,直线,多边形 ...

  8. JAVA-开发环境搭建之JDK安装配置教程

    在进行java开发前先要搭建java的开发环境 下载java的开发环境eclipse 安装&配置环境变量 1,JDK安装

  9. Codeforces Round #334 (Div. 2) A. Uncowed Forces 水题

    A. Uncowed Forces Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/contest/604/pro ...

  10. delphi Edit - TActionList

    Edit     TEditCut     TEditCopy     TEditpaste     TEditSelectAll     TEditUndo     TEditDelete   编辑 ...