❶ 一个局域网实现文件上传下载。最简单的方法。
这是惊呆的灵魂特有的寂静。
它躺在你离开它的地方,是否消散在
几乎同样的叶子,一片又一片
仅敢呼吸或打喷嚏。
我就扫你们烟囱,裹煤屑睡觉。
稚子就让回河岸畔,哈哈
❷ java实现文件的上传和下载
用输出流 接受 一个下载地址的网络流
然后将这个输出流 保存到本地一个文件 后缀与下载地址的后缀相同··
上传的话 将某个文件流 转成字节流 上传到某个webservice方法里
-------要代码来代码
URL url=new URL("http://www..com/1.rar");
URLConnection uc=url.openConnection();
InputStream in=uc.getInputStream();
BufferedInputStream bis=new BufferedInputStream(in);
FileOutputStream ft=new FileOutputStream("E://1.rar");
这是下载 上传太麻烦就不给写了
❸ 上传文件后可以直接下载
不用软件
http://m356.mail.qq.com/cgi-bin/loginpage?t=loginpage&s=logout
如果楼主有QQ就可以登陆QQ邮箱 使用中转站上传 获得下载地址
也就是网络硬盘 其它常用的网络硬盘:
http://file.mofile.com/
http://www.namipan.com/passport/pass_login.php
http://www.jsharer.com/pages/main.jsp
有的需要下载软件 比如纳米 QQ中转需要安装一个小插件 JS可以使用ftp上传也可以不安装任何东东直接上场 mofile同
❹ 上传和下载文件的原理
《文件上传原理:Web上传文件的原理及实现》
下载了慢慢看吧:
www.crazycoder.cn/mypdf/1487.pdf
下载:掌握ftp传输协议就可以了。
HTTP:
GET ***
Content range: xxx-xxx
...
check for return code 200, 220, 3xx, 4xx, 5xx
FTP:
USER
PASS
SIZE
PORT
REST
RETR
QUIT
check for return codes of each command
多开几条连接,必要时还可以适当提高下载线程的优先级。断点续传对于HTTP一般是用Range字段实现、FTP一般用REST命令——当然,你的程序自身必须维护一个“已接收字节”之类的数据,用已提交这些请求。
去找些HTTP、FTP协议的资料,都有详细的讲解。
==========================================================
软件原理 。主要是用软件上传和下载的原理是怎样的?
这个很难用1,2句话说清楚,因为有IE下载,web下载,BT下载原理各不相同
你还是去看看相关的书吧
❺ FTP上传下载文件
FTP使用方法2006-11-28 08:36 本来使用FTP上传是在网页制作完成之后的工作,但很多网页效果需要服务器支持才能看出设计效果,这是不同于三剑客中其他软件的地方, 我们提前向大家介绍FTP的只用方法 ,目的是为了方便制作者能及早让大家欣赏到您的作品,也方便大家相互交流。
尽管Dreamweaver MX 2004自带了功能强大的FTP上传功能,但鉴于国内网络现状以及使用方便程度,很多资深网民仍习惯于使用专业的FTP软件,以期在方便程度上、速度上获得更好的效果。
CuteFTP就是由Globalscape公司开发的一款专业的老牌FTP软件,在这一小节中,我们来一起一起学习CuteFTP5.0XP的基本使用方法。在任何一款FTP软件中,主机名、用户名、用户密码、远端目录、本地目录等都是必不可少的要素,在本小节学习了CuteFTP软件的使用方法之后,各类FTP软件也就能触类旁通了, Dreamweaver MX 2004自带的FTP功能也不例外,至于在Dreamweaver MX 2004自带的FTP特殊功能,我们将在后面的章节中加以讨论。
CuteFTP 5.0 MX 软件界面:
上图是软件运行后默认的界面,在设置中可以改变界面的显示形式,例如可以将本地目录和远端目录上下摆放,依照个人喜好而异,在下面的介绍中,我们以软件默认为例。
CuteFTP 5.0 MX常用工具和基本状态:
菜单栏——同所有软件一样,菜单栏几乎包含了软件的所有命令和功能。在基本使用中几乎不使用它。
工具栏——菜单栏中最常用的工具的图标按钮形式,使用它就能完成基本操作中的所有工作。
快速工具栏——只需填入主机名、用户名、密码和端口号,点击“连接”图标就能登陆相应的主机。
高亮显示和目录操作——如图所示当高亮显示在本地或远端的时候,点击高亮显示下的文件夹图标即可选择逻辑驱动器(本地)或者目录。
文件上传和下载——选中并打开本地和远端目录后用鼠标将选中的文件拖动到本地或远端即可完成上传和下载。CuteFTP支持整个目录的上传和下载。
提示:当我们选用虚拟主机的时候,连接主机后就直接并只能登陆到网络服务商分配给我们的目录下,我们只能在该目录下进行建立和删除子文件夹以及文件的上传、下载、删除等操作。
使用站点管理器:
点击工具栏中的“站点管理器”图标,即可打开如下图所示的站点管理器
1、点击“新建”按钮,主机列表中会出现一个“新建主机”
2、在界面右侧的“站点标签”中填入便于您区分和记忆的站点名称(任意)主机列表中的“新建主机”随之改变
3、“FTP主机地址”中填写网络服务商提供给您的域名或IP,请注意,这里不带有网络协议,如不带有“http://” 根据服务商不同,主机地址也可能叫做主机名。
4、“FTP站点用户名称”即网路服务商给您的用户名,根据服务商不同,也可能叫做用户帐号、帐号等。
5、“FTP站点密码”即密码(password)
6、“FTP站点连接端口”21端口是网络中默认的FTP端口,因此在服务商没有特别说明的情况下,这里是21端口。
7、“登陆类型”如果服务商没有特别指明,选择“普通”即可。
当完成站点管理之后,选中主机列表中的站点,然后点击“连接”按钮即可实现本机与服务器主机的连接,出现图一所示的界面,在本地或远端之间用鼠标拖动文件或文件夹即可实现文件、文件夹的上传下载。
❻ JAVA文件上传及下载。
其实都差不多啦,J2ME没太有人搞了,基本都是JSP
后台的话就是用了FileInputStream和FileOutputStream,传个路径就可以了。
有些文件格式需要使用字节流来传输,这个自己试试就知道了。
❼ 文件上传下载空间
http://www.namipan.com/index.php
这个网盘不错,你可以试试
而且可以讯雷等软件下载
❽ 网站中的文件上传下载功能怎么做的
下载容易,就是把要下载的东东直接放到网站上再做作链接就可以了。上传相对比较难一点,看你什么来做网站,比如ASP,JSP,PHP什么的,不同的语言用不同的上传方法
❾ 如何实现在网站的文件上传和下载功能
呵呵, ASP的到JAVA来问啦.
-------给你引用一段。
文件的上传下载是我们在实际项目开发过程中经常需要用到的技术,这里给出几种常见的方法,本文主要内容包括:
1、如何解决文件上传大小的限制
2、以文件形式保存到服务器
3、转换成二进制字节流保存到数据库以及下载方法
4、上传Internet上的资源
第一部分:
首先我们来说一下如何解决ASP.NET中的文件上传大小限制的问题,我们知道在默认情况下ASP.NET的文件上传大小限制为2M,一般情况下,我们可以采用更改WEB.Config文件来自定义最大文件大小,如下:
<httpRuntime executionTimeout="300" maxRequestLength="40960" useFullyQualifiedRedirectUrl="false"/>这样上传文件的最大值就变成了4M,但这样并不能让我们无限的扩大MaxRequestLength的值,因为ASP.NET会将全部文件载入内存后,再加以处理。解决的方法是利用隐含的HttpWorkerRequest,用它的GetPreloadedEntityBody和ReadEntityBody方法从IIS为ASP.NET建立的pipe里分块读取数据。实现方法如下:
IServiceProviderprovider=(IServiceProvider)HttpContext.Current;
HttpWorkerRequestwr=(HttpWorkerRequest)provider.GetService(typeof(HttpWorkerRequest));
byte[]bs=wr.GetPreloadedEntityBody();
.
if(!wr.IsEntireEntityBodyIsPreloaded())
{
intn=1024;
byte[]bs2=newbyte[n];
while(wr.ReadEntityBody(bs2,n)>0)
{
..
}
}这样就可以解决了大文件的上传问题了。
第二部分:
下面我们来介绍如何以文件形式将客户端的一个文件上传到服务器并返回上传文件的一些基本信息
首先我们定义一个类,用来存储上传的文件的信息(返回时需要)。
public class FileUpLoad
{
public FileUpLoad()
{
}
/**//// <summary>
/// 上传文件名称
/// </summary>
public string FileName
{
get
{
return fileName;
}
set
{
fileName = value;
}
}
private string fileName;
/**//// <summary>
/// 上传文件路径
/// </summary>
public string FilePath
{
get
{
return filepath;
}
set
{
filepath = value;
}
}
private string filepath;
/**//// <summary>
/// 文件扩展名
/// </summary>
public string FileExtension
{
get
{
return fileExtension;
}
set
{
fileExtension = value;
}
}
private string fileExtension;
}
另外我们还可以在配置文件中限制上传文件的格式(App.Config):
<?xml version="1.0" encoding="gb2312" ?>
<Application>
<FileUpLoad>
<Format>.jpg|.gif|.png|.bmp</Format>
</FileUpLoad>
</Application>
这样我们就可以开始写我们的上传文件的方法了,如下:
public FileUpLoad UpLoadFile(HtmlInputFile InputFile,string filePath,string myfileName,bool isRandom)
{
FileUpLoad fp = new FileUpLoad();
string fileName,fileExtension;
string saveName;
//
//建立上传对象
//
HttpPostedFile postedFile = InputFile.PostedFile;
fileName = System.IO.Path.GetFileName(postedFile.FileName);
fileExtension = System.IO.Path.GetExtension(fileName);
//
//根据类型确定文件格式
//
AppConfig app = new AppConfig();
string format = app.GetPath("FileUpLoad/Format");
//
//如果格式都不符合则返回
//
if(format.IndexOf(fileExtension)==-1)
{
throw new ApplicationException("上传数据格式不合法");
}
//
//根据日期和随机数生成随机的文件名
//
if(myfileName != string.Empty)
{
fileName = myfileName;
}
if(isRandom)
{
Random objRand = new Random();
System.DateTime date = DateTime.Now;
//生成随机文件名
saveName = date.Year.ToString() + date.Month.ToString() + date.Day.ToString() + date.Hour.ToString() + date.Minute.ToString()
+ date.Second.ToString() + Convert.ToString(objRand.Next(99)*97 + 100);
fileName = saveName + fileExtension;
}
string phyPath = HttpContext.Current.Request.MapPath(filePath);
//判断路径是否存在,若不存在则创建路径
DirectoryInfo upDir = new DirectoryInfo(phyPath);
if(!upDir.Exists)
{
upDir.Create();
}
//
//保存文件
//
try
{
postedFile.SaveAs(phyPath + fileName);
fp.FilePath = filePath + fileName;
fp.FileExtension = fileExtension;
fp.FileName = fileName;
}
catch
{
throw new ApplicationException("上传失败!");
}
//返回上传文件的信息
return fp;
}
然后我们在上传文件的时候就可以调用这个方法了,将返回的文件信息保存到数据库中,至于下载,就直接打开那个路径就OK了。
第三部分:
这里我们主要说一下如何以二进制的形式上传文件以及下载。首先说上传,方法如下:
public byte[] UpLoadFile(HtmlInputFile f_IFile)
{
//获取由客户端指定的上传文件的访问
HttpPostedFile upFile=f_IFile.PostedFile;
//得到上传文件的长度
int upFileLength=upFile.ContentLength;
//得到上传文件的客户端MIME类型
string contentType = upFile.ContentType;
byte[] FileArray=new Byte[upFileLength];
Stream fileStream=upFile.InputStream;
fileStream.Read(FileArray,0,upFileLength);
return FileArray;
}
这个方法返回的就是上传的文件的二进制字节流,这样我们就可以将它保存到数据库了。下面说一下这种形式的下载,也许你会想到这种方式的下载就是新建一个aspx页面,然后在它的Page_Load()事件里取出二进制字节流,然后再读出来就可以了,其实这种方法是不可取的,在实际的运用中也许会出现无法打开某站点的错误,我一般采用下面的方法:
首先,在Web.config中加入:
<add verb="*" path="openfile.aspx" type="RuixinOA.Web.BaseClass.OpenFile, RuixinOA.Web"/>
这表示我打开openfile.aspx这个页面时,系统就会自动转到执行RuixinOA.Web.BaseClass.OpenFile 这个类里的方法,具体实现如下:
using System;
using System.Data;
using System.Web;
using System.IO;
using Ruixin.WorkFlowDB;
using RXSuite.Base;
using RXSuite.Component;
using RuixinOA.BusinessFacade;
namespace RuixinOA.Web.BaseClass
{
/**//// <summary>
/// NetUFile 的摘要说明。
/// </summary>
public class OpenFile : IHttpHandler
{
public void ProcessRequest(HttpContext context)
{
//从数据库中取出要下载的文件信息
RuixinOA.BusinessFacade.RX_OA_FileManager os = new RX_OA_FileManager();
EntityData data = os.GetFileDetail(id);
if(data != null && data.Tables["RX_OA_File"].Rows.Count > 0)
{
DataRow dr = (DataRow)data.Tables["RX_OA_File"].Rows[0];
context.Response.Buffer = true;
context.Response.Clear();
context.Response.ContentType = dr["CContentType"].ToString();
context.Response.AddHeader("Content-Disposition","attachment;filename=" + HttpUtility.UrlEncode(dr["CTitle"].ToString()));
context.Response.BinaryWrite((Byte[])dr["CContent"]);
context.Response.Flush();
context.Response.End();
}
}
public bool IsReusable
{
get { return true;}
}
}
}
执行上面的方法后,系统会提示用户选择直接打开还是下载。这一部分我们就说到这里。
第四部分:
这一部分主要说如何上传一个Internet上的资源到服务器。前面我们有一篇文章详细介绍了使用方法,这里我不再多说。
请参考:将动态页面转化成二进制字节流
第五部分:总结
今天简单的介绍了几种文件上传与下载的方法,都是在实际的项目开发中经常需要用到的,可能还有不完善的地方,希望大家可以互相交流一下项目开发中的经验。写的不好的地方,请指正,谢谢!
❿ 如何把一个文件上传再供人下载
看一下我上传的音乐文件....(我用OPERA点击就能播放了...) http://sites.google.com/site/bandarixianjing/ 首先到这里注册一个帐户.. https://mail.google.com 然后到这里用刚注册的帐户登录,再创建新站点,之后很简单了~~ http://sites.google.com/site/ 上传的文件没有时间限制,但好像是有访问流量限制的,单个文件10M,可以创建很多站点音频太大的可以用转换器压缩一下~这个帐户还可以有很多其他的服务,看截图: http://sites.google.com/site/ssbkya/Home/6.jpg (其他文件暂存的网站有很多限制的)
采纳哦