設計軟件問(wèn)答為您提供設計軟件的相關(guān)問(wèn)題咨詢(xún)與解答,印刷案例規格及印刷報價(jià),讓您實(shí)時(shí)了解設計軟件的各類(lèi)相關(guān)問(wèn)題及印刷相關(guān)問(wèn)題,并提供設計時(shí)的注意事項,為您提供各設計軟件的相關(guān)問(wèn)題解決方案
吉印通 2021-05-30 05:04 800
數據庫存圖片的方式以下兩種:
在數據庫中存儲圖片文件的文件名或存儲路徑(本地路徑或者網(wǎng)絡(luò )路徑)這是最常用的方式,即是將圖片的存儲的完整路徑或文件名以字符串的方式存入到數據庫中,讀取效率高、而且便于維護pic文件。實(shí)現的方法也比較簡(jiǎn)單,拿最常見(jiàn)的使用場(chǎng)景來(lái)說(shuō)吧,比如用戶(hù)注冊時(shí),需要他上傳了一張照片,常見(jiàn)做法就是使用文件控件FileUpload讓用戶(hù)選擇電腦的上面的圖片,然后將其選擇的圖片所在的路徑及文件名獲取,將文件上傳后同時(shí)將文件名保存到數據庫對應的表中,顯示圖片時(shí)只需要從數據庫中獲取文件名并構造完整路徑即可。
ASP.NET
代碼如下:
//獲取FileUpload控件選取圖片后的文件路徑
strng filepath=FileUpload1.PostedFile.FileName;
//獲取圖片文件名,即從圖片路徑字符串中獲取最后\\的那段
string filename=filepath.Substring(filepath.LastIndexOf("\\")+1);
//然后執行文件上傳pic文件,將文件保存到服務(wù)器指定的目錄,如在程序目錄下建立一個(gè)PIC文件夾保存文件
FileUpload1.PostedFile.SaveAs(Server.MapPath("PIC/")+filename);
上傳成功后,將文件名filename字符串插入數據庫即可pic文件。
顯示時(shí)將filename從數據取出,用Image1.ImageUrl="PIC/"+filename 顯示pic文件。
將圖片文件轉為二進(jìn)制文件流保存到數據庫,顯示時(shí)再二進(jìn)制轉為文件這種方式很少用,因為圖片包含的信息比較多,轉為二進(jìn)制后存儲的內容大,占用空間,而且需要轉換,費時(shí)好資源pic文件。
保存圖片的 核心代碼如下:
//文件路徑
string picturePath = @"D:\1.jpg";
//創(chuàng )建FileStream對象
FileStream fs = new FileStream(picturePath, FileMode.Open, FileAccess.Read);
//聲明Byte數組
Byte[] mybyte = new byte[fs.Length];
//讀取數據
fs.Read(mybyte, 0, mybyte.Length);
fs.Close();
//轉換成二進(jìn)制數據 mybyte 保存到數據庫
SqlParameter prm = new SqlParameter
("@blobdata", SqlDbType.VarBinary, mybyte.Length, ParameterDirection.Input, false, 0, 0, null, DataRowVersion.Current, mybyte);
command.Parameters.Add(prm);
//打開(kāi)數據庫連接
connection.Open();
command.ExecuteNonQuery();
connection.Close();
讀取圖片的核心代碼如下:
//打開(kāi)數據庫連接
connection.Open();
//創(chuàng )建SQL語(yǔ)句
string sql = "select BLODID,BLOBData from Images order by BLODID";
//創(chuàng )建SqlCommand對象
SqlCommand command = new SqlCommand(sql, connection);
//創(chuàng )建DataAdapter對象
SqlDataAdapter dataAdapter = new SqlDataAdapter(command);
//創(chuàng )建DataSet對象
DataSet dataSet = new DataSet();
dataAdapter.Fill(dataSet, "BLOBTest");
int c = dataSet.Tables["BLOBTest"].Rows.Count;
if (c > 0)
Byte[] mybyte = new byte[0];
mybyte = (Byte[])(dataSet.Tables["BLOBTest"].Rows[c - 1]["BLOBData"]);
MemoryStream ms = new MemoryStream(mybyte);
//顯示圖片
pictureBox1.Image = Image.FromStream(ms);
connection.Close();
沈陽(yáng)畫(huà)冊印刷廠(chǎng)家,畫(huà)冊印刷公司為您提供畫(huà)冊印刷咨詢(xún),畫(huà)冊印刷案例,畫(huà)冊印刷規格及畫(huà)冊印刷報價(jià),讓您實(shí)時(shí)了解畫(huà)冊印刷廠(chǎng)家的最新規格及報價(jià),并提供畫(huà)冊印刷時(shí)的注意事項,印刷出讓您滿(mǎn)意的畫(huà)冊印刷產(chǎn)品。
2023-01-14 125
1、工做原理是圓壓圓,油墨通過(guò)墨輥傳遞使圖文部門(mén)至印刷用鋁基版材外表的親墨部門(mén),再轉移至橡皮布,通過(guò)壓印滾筒與橡皮布滾筒之間適宜的壓力轉移到紙張或其它承印物上,就是我們看到印品了。2、水印機印刷的流程接納前緣吸附滾輪摩擦體例送紙,操縱每個(gè)印...
2022-12-02 623
來(lái)源:石榴云/新疆日報監制:劉冰審核:張愛(ài)蘭責編:李建蘋(píng)編輯:都芃相關(guān)鏈接吉印通開(kāi)幕!第七屆中國—亞歐博覽會(huì )線(xiàn)上觀(guān)展通道開(kāi)啟疫情防控專(zhuān)家談丨新疆疾控專(zhuān)家:中高風(fēng)險區居民領(lǐng)取配送物品時(shí)要注意這幾點(diǎn)愛(ài)旅游·愛(ài)上詩(shī)畫(huà)伊犁...
2022-09-22 130
021yin.com。人保壽險如果您有實(shí)力有夢(mèng)想,想挑戰高薪,想有最高的福利待遇,請加盟中國人保!一、招聘年齡:2*-**歲,大專(zhuān)以上學(xué)歷,兩年工作經(jīng)驗,無(wú)保險經(jīng)驗從事過(guò)銷(xiāo)售人員優(yōu)先。具有很好的語(yǔ)言表達能力及溝通能力,經(jīng)培訓后,能獨...
2022-08-24 121
在電子時(shí)代,一款紙質(zhì)臺歷在首發(fā)20小時(shí)內狂銷(xiāo)2萬(wàn)冊以上、自上市以來(lái)多次賣(mài)斷貨,堪稱(chēng)“神話(huà)般的存在”。創(chuàng )造這一神話(huà)的“爆品”,名叫“單向歷”,是“單向空間”打造的明星產(chǎn)品。1所謂“單向空間”,其前身是200*年底由*位年輕的媒體人在圓明...
2022-08-15 128
掃一掃微信報價(jià)