當前位置:首頁 » 文件管理 » 上傳文件代碼

上傳文件代碼

發布時間: 2022-02-06 17:54:47

1. c#代碼 上傳文件完整代碼

webconfig 配置
<!--文件上傳類型-->
<add key="FileType" value=".doc,.xls,.txt,.rar"/>
<add key="PicTureTye" value=".jpg|.gif|.png|.bmp|.psd|.svg|"/>
<!--上傳文件大小-->
<add key="FileSizeLimit" value="102400"/>

#region 判斷上傳文件類型
protected bool IsAllowableFileType()
{
//從web.config讀取判斷文件類型限制
string strFileTypeLimit = ConfigurationManager.AppSettings["FileType"].ToString();
//當前文件擴展名是否包含在這個字元串中
if (strFileTypeLimit.IndexOf(Path.GetExtension(FileUp.FileName).ToLower()) != -1)
{
return true;
}
else
return false;
}
protected bool IsAllowablePictureType()
{
//從web.config讀取判斷圖片類型限制
string strFileTypeLimit = ConfigurationManager.AppSettings["PicTureTye"].ToString();
//當前文件擴展名是否包含在這個字元串中
if (strFileTypeLimit.IndexOf(Path.GetExtension(FileUp.FileName).ToLower()) != -1)
{
return true;
}
else
return false;
}
#endregion
#region 判斷文件大小限制
private bool IsAllowableFileSize()
{
//從web.config讀取判斷文件大小的限制
double iFileSizeLimit = Convert.ToInt32(ConfigurationManager.AppSettings["FileSizeLimit"]) * 1024;
//判斷文件是否超出了限制
if (iFileSizeLimit > FileUp.PostedFile.ContentLength)
{
return true;
}
else
{
return false;
}
}
#endregion

protected void btnUpFile_Click(object sender, EventArgs e)
{

//判讀是否有上傳文件
if (FileUp.PostedFile.ContentLength > 0)
{
if (IsAllowableFileType())
{
if (Directory.Exists(Server.MapPath("~/File")) == false)//判斷文件夾是否存在,若不存在則創建
{
Directory.CreateDirectory(Server.MapPath("~/File"));
}
else
if (IsAllowableFileSize())
{
//string UploadFilePath = ConfigurationManager.AppSettings["UploadFile"].ToString();
string UploadFilePath = Server.MapPath("File\\");
string fullName = FileUp.PostedFile.FileName;
string newName = DateTime.Now.Ticks.ToString() + fullName.Substring(fullName.LastIndexOf("."));
FileUp.SaveAs(UploadFilePath + newName);
lblFileUrl.Text = fullName.Substring(fullName.LastIndexOf("\\")) + " 上傳成功";
lblSaveFileName.Text = newName;
}
else
MessegeBox.Show(this, "文件太大了,上傳失敗");
}
else
MessegeBox.Show(this, "文件類型不正確,上傳失敗");
}
else
{
MessegeBox.Show(this, "上傳文件為空,上傳失敗");
}
}
到這里,文件已經上傳到一個File文件夾中了,當然,如果要把路徑保存到資料庫,你需要另外寫一個保存路徑到資料庫的方法,在此就不在贅述了

2. php上傳文件代碼,怎麼寫

2樓和3樓給你的回答就跟SB一樣,自己比你還菜,就瞎扯。我問問題的時候就是被這些SB不停騷擾導致最後無人回答了。

上傳代碼看這里(帶重命名的):
<form action="" method="post" enctype="multipart/form-data">
上傳文件:<input type="file" name="upLoad"><br>
重命名為:<input type="text" name="newName"><br>
<input type="submit" name="submit"><input type="reset" name="reset">
</form>
<br><i><small>文件上傳到伺服器需要一些時間</small></i><br>
<?php
$upLoadDir="/"; //為目錄變數指定目錄位置
$upLoadError=$_FILES['upLoad']['error'];
$fileName=$_FILES['upLoad']['name'];
$fileTemName=$_FILES['upLoad']['tmp_name'];
$fileSize=$_FILES['upLoad']['size'];
$newName=$_POST['newName'];
function upLoad(){
global $upLoadDir,$upLoadError,$fileName,$fileTemName,$fileSize,$fileSuffix,$newName;
if($newName){ //如果需要被更新文件名
$fileReName=$newName.".".pathinfo($fileName,PATHINFO_EXTENSION); //採用新文件名+獲取文件名後綴
}else{ //如果不需要更新文件名
$fileReName=$fileName; //定義文件存儲位置,並在文件名前加一組隨機數字
}
if($upLoadError>0){ //0表示沒有錯誤發生,文件上傳成功
echo"錯誤:";
switch($upLoadError){
case 1:echo"上傳文件超過配置文件規定值。";break; //1表示上傳的文件超過了php.ini中upload_max_filesize選項限制的值
case 2:echo"上傳文件超過表單約定值。";break; //2表示上傳文件的大小超過了 HTML 表單中 MAX_FILE_SIZE 選項指定的值。
case 3:echo"上傳文件不完全。";break; //3表示文件只有部分被上傳。
case 4:echo"沒有上傳文件。";break; //4表示沒有文件被上傳。
}
}else{
if(is_uploaded_file($fileTemName)){ //確認文件通過HTTP POST上傳
if(!move_uploaded_file($fileTemName,($upLoadDir.$fileReName))){ //如果無法將上傳的文件移動到新位置
echo"文件上傳失敗,請重新上傳。";
}else{ //否則返回成功信息
echo"文件上傳成功!<br>".date("Y-m-d H:i:s")."<br>上傳文件:".$fileName."<br>文件大小:".number_format(($fileSize/1024/1024),2)."Mb"."<br>重命名為:".$fileReName;
}
}else{ //如果不是通過HTTP POST方式上傳,則提示非法信息
echo"文件".$fileName."不合法!";
}
}
}
if(!empty($fileName)){
if(is_dir($upLoadDir)){ //如果目錄存在
upLoad(); //則執行上傳流程
}else{ //如果目錄不存在
mkdir($upLoadDir); //則創建目錄
upLoad(); //再執行上傳流程
}
}else{
echo"請選擇需要上傳的文件。";
}
?>

3. html上傳文件代碼

在HTML標准中,XMLHttpRequest對象被重新定義,被稱為「XMLHttpRequest Level 2」,其中包含了以下5個新特性:

1、支持上傳、下載位元組流,比如文件、blob以及表單數據。

2、增加了上傳、下載中的進度事件。

3、跨域請求的支持。

4、允許發送匿名請求(即不發送HTTP的Referer部分)。

5、允許設置請求的超時。

    在這篇教程中,我們主要關注第一和第二項特性,尤其是第二項——它能夠提供我們想要的上傳進度。和之前的方案不同,這個方案並不要求伺服器作出特殊的設置,因此大家邊看教程就可以邊動手試試了。

    上面圖示的就是我們能夠實現的內容:

    1、顯示上傳的文件信息,比如文件名、類型、尺寸。

    2、一個能夠顯示真實進度的進度條。

    3、上傳的速度。

    4、剩餘時間的估算。

    5、已上傳的數據量。

    6、上傳結束後伺服器返回的響應。

    另外,憑借XMLHttpRequest,我們的上傳過程整個都是非同步的,因此用戶在上傳文件的時候,依然可以操作網頁當中的其它元素,並不需要專門等待上傳的完成。而在上傳結束後,我們能夠獲取伺服器發回的響應,因此整個上傳過程都顯得相當順理成章。

4. 文件上傳代碼問題

你已經有了upload這樣一個文件對象,那麼可以獲取到它的名稱什麼的了,建議你使用一個工具類org.apache.commons.io.FileUtils,裡面有各種使用方法,獲取size 名稱 甚至文件操作等。

5. 怎樣用C++編寫上傳文件代碼

先查看下系統的API 函數,然後用C++語言包裝那些API,C++中沒有什麼具體的網路功能,只能用它來包裝系統的API。。

6. jsp上傳文件代碼!

其實就是讀流的形式。我這有個struts1的,自己研究下。可以批量上傳配置文件:#路徑請用雙\
path=c:\\test\\
#大小為b
fileSize=5000
#文件類型用","隔開
fileType=jpg,txt主要類:// 路徑常量
public static final String FILEPATH = "path";
// 文件大小
public static final String FILESIZE = "fileSize";
// 文件類型
public static final String FILETYPE = "fileType"; /**
* @param key:資源文件key值
* @return 返回對應key的value
*/
public static String getValueByKey(String key) {
String rKey = "";
CommonUtil util = new CommonUtil();
// 獲取資源文件流
InputStream in = util.getClass().getResourceAsStream(
"/upload.properties"); Properties props = new Properties();
try {
// 載入資源文件
props.load(in);
// 獲取資源文件對應key值
rKey = props.get(key).toString();
in.close();
} catch (IOException e) {
e.printStackTrace(); }
return rKey; // 遍歷所有key值
// Set set = props.keySet();
// Iterator it = set.iterator();
// System.out.println("Begin ...");
// while(it.hasNext()){
// System.out.println((String)it.next());
// }
// System.out.println("End");
} /**
* 根據系統時間+兩位數字隨機數產生文件名
*
* @return 例:2010091521202315
*/
public static String getFileName() {
// 格式化日期
SimpleDateFormat s = new SimpleDateFormat("yyyyMMddHHmmss");
String fileName = s.format(new Date());
// 隨機數
Random r = new Random();
int random = 0;
do {
random = r.nextInt(100);
} while (random < 10);
// 連接字元串
fileName += random;
return fileName;
} /**
* 上傳文件集合
*
* @param files:FormFile的集合
* @param code:數據字典模塊路徑id
* @param fileName:文件真實名稱
* @return 上傳後的文件id數組
*/
public static String[] filesUpload(List files, int code, String[] fileName)
throws IOException, Exception {
// 輸出文件名
for (int i = 0; i < fileName.length; i++) {
System.out.println("文件" + (i + 1) + "名字:" + fileName[i]);
}
// 獲取資源文件上傳路徑
String path = CommonUtil.getValueByKey(CommonUtil.FILEPATH);
System.out.println("資源文件路徑:" + path);
// 獲取大小文件上限
long fileSize = Long.parseLong(CommonUtil
.getValueByKey(CommonUtil.FILESIZE));
System.out.println("文件上限大小:" + fileSize + "b");
// 獲取文件類型
String types = CommonUtil.getValueByKey(CommonUtil.FILETYPE).toString();
System.out.println("限制文件類型:" + types);
// 數組轉為集合
List fileTypes = Arrays.asList(types.split(",")); // 首先遍歷文件集合判斷是否合法
for (Iterator iterator = files.iterator(); iterator.hasNext();) {
// 單個文件
FormFile file = (FormFile) iterator.next();
// 文件類型
String ext = file.getFileName().substring(
file.getFileName().lastIndexOf(".") + 1,
file.getFileName().length());
// 遍歷文件類型集合進行判斷
if (!fileTypes.contains(ext)) {
throw new Exception("不允許上傳" + ext + "類型文件");
}
if (fileSize < file.getFileSize()) {
throw new Exception("上傳的文件過大");
}
}

for (Iterator iterator = files.iterator(); iterator.hasNext();) {
// 單個文件
FormFile file = (FormFile) iterator.next(); /*
* 。。。。。。。。。。。。。。。實際上傳路徑
*/
// 根據實際上傳路徑新建文件夾
new File(path).mkdirs();
// 文件輸出路徑
String savePath = path + getFileName() + ".jpg";
System.out.println("文件輸出路徑" + savePath);
if (file.getFileSize() > 10) {
// 輸入流
InputStream input = file.getInputStream();
byte[] b = new byte[1024];
// 輸出流
FileOutputStream fileoutput = new FileOutputStream(savePath);
// 開始輸出
while (input.read(b) != -1) {
fileoutput.write(b);
}
fileoutput.close();
input.close();
// 文件上傳結束
}
}
/*
* 。。。。。。。。。。。。。。獲取上傳後的文件名
*/
return null;
}

7. 文件上傳的代碼,能否解析一下什麼意思

將活動工作表的A4到B列的最後的區域,按照A列的內容,拆分到與A列內容相同名的工作表中去。

8. 求aspx上傳文件代碼

#region 上傳文件的代碼
string filerealname = ""; //上傳的文件絕對路徑
string fileMapPath = "";//文件在硬碟中實際存儲路徑
string newFileName = "";//

if (this.Up_file.PostedFile.ContentLength > 0)
{
if (Up_file.PostedFile.ContentLength < 1024 * 1024 * 100)
{
try
{
filerealname = Up_file.PostedFile.FileName;//上傳的文件絕對路徑
string fileName = filerealname.Substring(filerealname.LastIndexOf(@"\") + 1);//取得文件擴展名
newFileName = DateTime.Now.ToString("yyyyMMddHHmmss") + "_" + fileName;//自動根據日期為文件命名,確保文件名不重復

string fullpath = Server.MapPath("~/Notice/upload/");//文件的上傳路徑
if (!Directory.Exists(fullpath))//沒有找到路徑,創建新文件夾
{
Directory.CreateDirectory(fullpath);//創建一個文件夾
}

fileMapPath = Server.MapPath("~/Notice/upload/" + newFileName);//上傳文件到伺服器
Up_file.PostedFile.SaveAs(fileMapPath);
//保存文件路徑
values += "upload/" + newFileName + "','";
}
catch (Exception)
{
//上傳超限提示
Page.ClientScript.RegisterStartupScript(this.GetType(), "", "showMsg('#Up_file', '#imgTishi4', '文件上傳出錯!');", true);
return;
}
}
else
{
//上傳超限提示
Page.ClientScript.RegisterStartupScript(this.GetType(), "", "showMsg('#Up_file', '#imgTishi4', '文件超出100M,請重新選擇文件!');", true);
return;
}
}
else
values += "無','";
#endregion

9. 求POST上傳文件的代碼

使用smartuplaod組件的 部分代碼 原因很簡單 這里發不完全部的

uploadFile.jsp

<%@ page language="java" import="java.util.*" pageEncoding="gb2312"%>
<%@ page import="com.jspsmart.upload.*"%>
<%
// 設定請求編碼方式,否則遇到中文就會亂碼
request.setCharacterEncoding("gb2312");
%>

<html>
<head>
<title>上傳文件實例</title>
</head>

<body>
<h2>上傳文件實例</h2>
<hr>
請選擇上傳文件數量:
<select id="number" onchange="buildFileInput()">
<option value=1>1</option>
<option value=2>2</option>
<option value=3>3</option>
<option value=4>4</option>
<option value=5>5</option>
</select>
<form name="form1" enctype="multipart/form-data" action="upload_do.jsp" method="post">
<div id="files"></div>
<input type="submit" name="Submit" value="提交" />
</form>
</body>
<script language="javascript">

//根據選擇的文件數量構造文件輸入框列表
function buildFileInput(){
//取得文件數量下拉列表值
var num = document.all.number.value;
//將現有的文件輸入框清除
clearFileInput();
//構造出新的文件輸入框列表
for (var i=0;i<num;i++){
//創建一個div標簽節點
filediv = document.createElement("div");
//創建一個文本節點
labeltext = document.createTextNode("第"+(i+1)+"個文件:");
//創建一個文件輸入框節點
fileinput = document.createElement("input");
fileinput.type = "file";
fileinput.name = "file"+i;
//創建一個文本節點
memotext = document.createTextNode(" 第"+(i+1)+"個文件備註:");
//創建一個文本輸入框節點
memoinput = document.createElement("input");
memoinput.type = "text";
memoinput.name = "memo"+i;
//將文本節點追加成div標簽節點的子節點
filediv.appendChild(labeltext);
//將文件輸入框節點追加成div標簽節點的子節點
filediv.appendChild(fileinput);
//將文本節點追加成div標簽節點的子節點
filediv.appendChild(memotext);
//將文本輸入框節點追加成div標簽節點的子節點
filediv.appendChild(memoinput);
//將div標簽節點追加成files的子節點
document.all.files.appendChild(filediv);
}
}

//將現有的文件輸入框清除
function clearFileInput(){
while (document.all.files.childNodes.length>0)
document.all.files.removeChild(document.all.files.childNodes[0]);
}

//初始化文件輸入框列表
buildFileInput();

</script>
</html>

10. html網頁上傳文件的完整代碼

html前端代碼:

<html>
<body>
<formaction="upload-file.php"method="post"
enctype="multipart/form-data">
<labelfor="file">文件名:</label>
<inputtype="file"name="file"id="file"/>
<br/>
<inputtype="submit"name="submit"value="提交"/>
</form>
</body>
</html>

如果是ubuntu上部署apache2,你應該是php開發者吧,action="upload-file.php
" 中的upload-file.php改為你自己的後端php接收文件的邏輯代碼即可!

這里提供upload-file.php後端接收文件的代碼:

<?php
if($_FILES["file"]["error"]>0)
{
echo"錯誤:".$_FILES["file"]["error"]."<br/>";
}
else
{
echo"文件名:".$_FILES["file"]["name"]."<br/>";
echo"類型:".$_FILES["file"]["type"]."<br/>";
echo"大小:".($_FILES["file"]["size"]/1024)."Kb<br/>";
}
if(file_exists("upload/".$_FILES["file"]["name"]))
{
echo$_FILES["file"]["name"]."文件已經存在.";
}
else
{
move_uploaded_file($_FILES["file"]["tmp_name"],
"upload/".$_FILES["file"]["name"]);
echo"文件已經被存儲到:"."upload/".$_FILES["file"]["name"];
}
?>

代碼很簡單,我相信你應該能看懂,這里的 文件夾 upload/ 需要你自己手動創建,請確保文件路徑正取!


我也是web開發者,有問題可繼續追問我!或是加我工作室QQ(540144097),在群里向我提問!有問必答,望採納......

熱點內容
我的世界伺服器綠寶石塊重生 發布:2024-10-23 07:31:16 瀏覽:499
微信綁卡密碼如何改 發布:2024-10-23 07:22:51 瀏覽:148
南航777解壓密碼 發布:2024-10-23 07:11:58 瀏覽:821
低端安卓用哪個瀏覽器最好 發布:2024-10-23 07:11:47 瀏覽:259
王思聰那台是伺服器還是電腦 發布:2024-10-23 06:58:43 瀏覽:136
這樣學java不枯燥 發布:2024-10-23 06:57:22 瀏覽:10
台式電腦電源可以在伺服器上嗎 發布:2024-10-23 06:56:36 瀏覽:444
工行存儲利率2021 發布:2024-10-23 06:53:39 瀏覽:194
漢字拼音java 發布:2024-10-23 06:47:13 瀏覽:172
android動態注冊廣播 發布:2024-10-23 06:32:01 瀏覽:393