ASP.Net中实现上传过程中将文本文件转换成PDF的方法

简介: iTextSharp是一个常用的PDF库,我们可以使用它来创建、修改PDF文件或对PDF文件进行一些其他额外的操作.本文讲述了如何在上传过程中将文本文件转换成PDF的方法。 基本工作 在开始之前,我们需要从这个URL下载iTextSharp。

iTextSharp是一个常用的PDF库,我们可以使用它来创建、修改PDF文件或对PDF文件进行一些其他额外的操作.本文讲述了如何在上传过程中将文本文件转换成PDF的方法。

基本工作

在开始之前,我们需要从这个URL下载iTextSharp。除此之外,也可以使用”NuGet Package Manager” 将它从NuGet上下载到项目的解决方案中。下面通过屏幕截图来进行讲解。

代码

为了操作简洁,我设计了一个带上传控件和一个按钮的webform。HTML代码如下: 

<!DOCTYPE html>  
  
<html xmlns="http://www.w3.org/1999/xhtml">  
<head runat="server">  
    <title></title>  
</head>  
<body>  
    <form id="form1" runat="server">  
        <div>  
            <asp:Label ID="lbl" runat="server" Text="Select a file to upload:"></asp:Label>  
            <asp:FileUpload runat="server" ID="fu" /><br />  
            <asp:Button runat="server" ID="btnUpload" Text="Upload" OnClick="btnUpload_Click" />  
        </div>  
    </form>  
</body>  
</html>  

 后台代码如下:

protected void btnUpload_Click(object sender, EventArgs e)  
        {  
            // Check that upload control had file  
            if(fu.HasFile)  
            {  
                // Get the Posted File  
                HttpPostedFile pf = fu.PostedFile;  
                Int32 fileLen;  
                // Get the Posted file Content Length  
                fileLen = fu.PostedFile.ContentLength;  
                // Create a byte array with content length  
                Byte[] Input = new Byte[fileLen];  
                // Create stream   
                System.IO.Stream myStream;  
                 // get the stream of uploaded file  
                myStream = fu.FileContent;  
                // Read from the stream  
                myStream.Read(Input, 0, fileLen);  
                // Create a Document  
                Document doc = new Document();  
                // create PDF File and create a writer on it  
                PdfWriter writer = PdfWriter.GetInstance(doc, new FileStream(string.Concat(Server.MapPath("~/Pdf/PdfSample"), ".pdf"), FileMode.Create));  
                // open the document  
                doc.Open();  
                // Add the text file contents   
                doc.Add(new Paragraph(System.Text.Encoding.Default.GetString(Input)));  
                // Close the document  
                doc.Close();  
            }  
        }  

当运行应用程序时,它将显示一个上传控件和一个上传按钮。转换后,PDF文件就会存储在“PDF”文件夹下。当然在运行应用程序之前,我们需要在解决方案下创建一个命名为“PDF”的文件夹。

输出结果

目录
相关文章
|
1月前
|
SQL 缓存 开发框架
分享一个 .NET EF6 应用二级缓存提高性能的方法
分享一个 .NET EF6 应用二级缓存提高性能的方法
|
23天前
|
数据安全/隐私保护 Python Windows
三种方法,Python轻松提取PDF中全部图片
三种方法,Python轻松提取PDF中全部图片
|
7天前
|
BI API
Form 中调用并发请求生成报表并输出PDF的方法
【9月更文挑战第11天】该文档介绍了在表单中通过并发请求生成报表并将其输出为PDF的方法,包括设置并发请求、配置输出选项、触发请求及处理结果。具体步骤涉及创建请求、配置参数、设置输出类型为PDF、添加触发按钮、调用请求API、等待请求完成、获取并显示PDF文件。需根据所用系统和技术调整实现细节。
|
1月前
|
程序员 数据库
分享 2 个 .NET EF 6 只更新某些字段的方法
分享 2 个 .NET EF 6 只更新某些字段的方法
|
1月前
|
数据库
分享一个 .NET EF 6 扩展 Where 的方法
分享一个 .NET EF 6 扩展 Where 的方法
|
1月前
|
开发框架 前端开发 算法
分享 .NET EF6 查询并返回树形结构数据的 2 个思路和具体实现方法
分享 .NET EF6 查询并返回树形结构数据的 2 个思路和具体实现方法
|
1月前
|
开发框架 中间件 .NET
分享 ASP.NET Core Web Api 中间件获取 Request Body 两个方法
分享 ASP.NET Core Web Api 中间件获取 Request Body 两个方法
|
1月前
|
开发框架 .NET API
如何在 ASP.NET Core Web API 方法执行前后 “偷偷“ 作一些 “坏“ 事?初识 ActionFilterAttribute
如何在 ASP.NET Core Web API 方法执行前后 “偷偷“ 作一些 “坏“ 事?初识 ActionFilterAttribute
|
1月前
|
开发框架 前端开发 .NET
Asp.net Webapi 的 Post 方法不能把参数加到 URL 中?试试这样写
Asp.net Webapi 的 Post 方法不能把参数加到 URL 中?试试这样写
|
2月前
|
算法 API 数据安全/隐私保护
.NET使用原生方法实现文件压缩和解压
.NET使用原生方法实现文件压缩和解压
.NET使用原生方法实现文件压缩和解压