将word里的内容保存到服务器?
首先引入类库,MicrosoftOfficeInteropWord,然后进行编程。代码如下:
using System;
using SystemCollectionsGeneric;
using SystemComponentModel;
using SystemData;
using SystemDrawing;
using SystemText;
using SystemWindowsForms;
using MicrosoftOfficeInteropWord; 数据挖掘研究院
namespace WordTest
{
public partial class Form1 : Form
{
object strFileName;
Object Nothing;
MicrosoftOfficeInteropWordApplication myWordApp = new MicrosoftOfficeInteropWordApplicationClass();
Document myWordDoc;
string strContent = ""; 数据挖掘研究院
public Form1()
{
InitializeComponent();
}
数据挖掘研究院
private void button1_Click(object sender, EventArgs e)
{
createWord();
//openWord();
} 数据挖掘研究院
private void createWord()
{
strFileName = SystemWindowsFormsApplicationStartupPath + "testdoc";
if (SystemIOFileExists((string)strFileName))
SystemIOFileDelete((string)strFileName);
Object Nothing = SystemReflectionMissingValue;
myWordDoc = myWordAppDocumentsAdd(ref Nothing, ref Nothing, ref Nothing, ref Nothing);
数据挖掘研究院
#region 将数据库中读取得数据写入到word文件中 数据挖掘研究院
strContent = "你好 ";
myWordDocParagraphsLastRangeText = strContent;
数据挖掘实验室
strContent = "这是测试程序";
myWordDocParagraphsLastRangeText = strContent; 数据挖掘研究院
#endregion 数据挖掘研究院
//将WordDoc文档对象的内容保存为DOC文档
myWordDocSaveAs(ref strFileName, ref Nothing, ref Nothing, ref Nothing, ref Nothing, ref Nothing, ref Nothing, ref Nothing, ref Nothing, ref Nothing, ref Nothing, ref Nothing, ref Nothing, ref Nothing, ref Nothing, ref Nothing);
//关闭WordDoc文档对象
myWordDocClose(ref Nothing, ref Nothing, ref Nothing);
//关闭WordApp组件对象
myWordAppQuit(ref Nothing, ref Nothing, ref Nothing);
数据挖掘研究院
thisrichTextBox1Text = strFileName + " " + "创建成功";
数据挖掘实验室
}
private void openWord()
{
fontDialog1ShowDialog();
SystemDrawingFont font = fontDialog1Font;
object filepath = "D:\aspdocx";
object oMissing = SystemReflectionMissingValue;
myWordDoc = myWordAppDocumentsOpen(ref filepath, ref oMissing, ref oMissing, ref oMissing, ref oMissing,
ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing,
ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing); 数据挖掘研究院
myWordDocContentFontSize = fontSize;
myWordDocContentFontName = fontName;
myWordDocSave();
richTextBox1Text = myWordDocContentText;
myWordDocClose(ref oMissing, ref oMissing, ref oMissing);
myWordAppQuit(ref oMissing, ref oMissing, ref oMissing);
} 数据挖掘研究院
}
数据挖掘研究院
http://wwwcnblogscom/wrtandy/archive/2006/12/13/andyhtml 数据挖掘研究院
1 把2003做成域服务器 并为每个用户添加域用户
2 让客户端用户使用域用户登录
3 把专门存放个人文件的文件夹放在服务器的NTFS分区里
4 为每个用户的文件夹配置访问权限(文件夹点右键,安全,里设置权限),只留该用户和administrator组的权限其它权限全部删除 也可以对用户进行分组,添加组权限
5 把这个文件夹共享出来
6 客户机通过 \\服务器IP 来访问服务器共享出来的文件就只能访问有权限的文件了别人的文件无法访问还可以对用户进行磁盘配额限制用户使用磁盘的大小
C#实现压缩方法
这个是未经优化的简单实现
publicstaticSystemDrawingImageGetImageThumb(SystemDrawingImagesourceImgintwidthintheight){SystemDrawingImagetargetImg=newSystemDrawingBitmap(widthheight);using(SystemDrawingGraphicsg=SystemDrawingGraphicsFromImage(targetImg)){gInterpolationMode=SystemDrawingDrawingDInterpolationModeHigh;gSmoothingMode=SystemDrawingDrawingDSmoothingModeHighQuality;gInterpolationMode=SystemDrawingDrawingDInterpolationModeHighQualityBicubic;gCompositingQuality=SystemDrawingDrawingDCompositingQualityHighQuality;gPixelOffsetMode=SystemDrawingDrawingDPixelOffsetModeHighQuality;gDrawImage(sourceImgnewSystemDrawingRectangle(widthheight)newSystemDrawingRectangle(sourceImgWidthsourceImgHeight)SystemDrawingGraphicsUnitPixel);gDispose();}returntargetImg;}
这个方法比较简单用到的是高质量压缩经过这个方法压缩后K的只能压缩到k左右
经过改写代码实现了如下的方法
publicBitmapGetImageThumb(BitmapmgSizenewSize){doubleratio=d;doublemyThumbWidth=d;doublemyThumbHeight=d;intx=;inty=;Bitmapbp;if((mgWidth/ConvertToDouble(newSizeWidth))>(mgHeight/ConvertToDouble(newSizeHeight)))ratio=ConvertToDouble(mgWidth)/ConvertToDouble(newSizeWidth);elseratio=ConvertToDouble(mgHeight)/ConvertToDouble(newSizeHeight);myThumbHeight=MathCeiling(mgHeight/ratio);myThumbWidth=MathCeiling(mgWidth/ratio);SizethumbSize=newSize((int)newSizeWidth(int)newSizeHeight);bp=newBitmap(newSizeWidthnewSizeHeight);x=(newSizeWidththumbSizeWidth)/;y=(newSizeHeightthumbSizeHeight);SystemDrawingGraphicsg=GraphicsFromImage(bp);gSmoothingMode=SmoothingModeHighQuality;gInterpolationMode=InterpolationModeHighQualityBicubic;gPixelOffsetMode=PixelOffsetModeHighQuality;Rectanglerect=newRectangle(xythumbSizeWidththumbSizeHeight);gDrawImage(mgrectmgWidthmgHeightGraphicsUnitPixel);returnbp;}
这样实现的压缩使压缩率大幅度上升其实代码并没有变多少最主要的是在保存的时候要是用jpg格式
如果不指定格式默认使用的是png格式
下面这个是园友写的根据设置质量数值来压缩的方法
lishixinzhi/Article/program/net/201311/14025
C#代码实现压缩至40K以下任何压缩算法的压缩比都不能无限的提高的。
最有效地方法就是降低的分辨率,即像素值。的每个像素占用4个字节,假设一般JPG格式的压缩比为1:10的话,40K字节最多只能储存40000/410=10万像素的,即的长乘以宽不超过10万,一般长宽比是4:3;所以的大小最好不超过360X270。
降低的分辨率就是缩小,用Graphics对象、Bitmap对象就能做到。
BitmapbmpDest=newBitmap(360,270);
BitmapbmpSrc=newBitmap("");
Graphicsg=(bmpDest);
gDrawImage(bmpSrc,rectDest,rectSrc,);
或者将PictureBox的长和宽限定在360X270
C#如何把用户上传的文件压缩,然后再把压缩后的保存到服务器上?你说的压缩,实际上就是生成缩略图。
你利用生成缩略图后,缩略图可以直接保存到服务器上成为文件,不需要再保存到postedFile中了。
1右击你要发布的mxd地图文件,共享为服务 如下图所示,选择保存服务定义文件
2 选择无可用连接
3 保存好sd文件
4 与一般发布服务一样设置相应内容,随后点击右上角的过渡按钮即可保存出sd文件
5 完成得到了gaodeTilesd文件
6 拿到客户的服务器上(只安装了arcserver) ,操作arcserver即可发布服务
注意用ie登录arcserver,Chrome出现过卡在正在将服务定义复制到服务器中这一步;不知原因,感谢他人遇到后写下 https://blogcsdnnet/jishuxiaoniuniu/article/details/76889381
0条评论