程式看得懂的檔案 |
尚未結案
|
hct47
一般會員 ![]() ![]() 發表:34 回覆:15 積分:9 註冊:2004-04-23 發送簡訊給我 |
|
cashxin2002
版主 ![]() ![]() ![]() ![]() ![]() ![]() 發表:231 回覆:2555 積分:1937 註冊:2003-03-28 發送簡訊給我 |
|
暗黑破壞神
版主 ![]() ![]() ![]() ![]() ![]() ![]() 發表:9 回覆:2301 積分:1627 註冊:2004-10-04 發送簡訊給我 |
引言: 我在程式裡有24張圖(TBitmap)以及24個字串(string),我要將他們存成一個檔,待我下次直接叫出這個檔案可以使用,該怎麼做才好?(total bmp count)(bmp0 size)(bmp data)(bmp1 size)(bmp1 data)........(bmpn size)(bmpn data)(total string count)(string1 length)(string1 data)....(stringn length)(stringn) 用這個方法存檔。你就可以取出並將資料配給 bmp and string 了 |
pceyes
尊榮會員 ![]() ![]() ![]() ![]() ![]() ![]() 發表:70 回覆:657 積分:1140 註冊:2003-03-13 發送簡訊給我 |
|
malanlk
尊榮會員 ![]() ![]() ![]() ![]() ![]() ![]() 發表:20 回覆:694 積分:577 註冊:2004-04-19 發送簡訊給我 |
參考這篇, 敎你怎樣將圖片,字串 放入 RES File
http://delphi.ktop.com.tw/topic.php?topic_id=18030 參考這篇及整個章節, 看 Windows 是如何處理 RC 的檔案
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/tools/tools/rcdata_resource.asp 可以用 LoadBitmap 把圖片由 RES 讀出 這篇提供大概的製作方式及實作
http://delphi.ktop.com.tw/topic.php?TOPIC_ID=75327
|
malanlk
尊榮會員 ![]() ![]() ![]() ![]() ![]() ![]() 發表:20 回覆:694 積分:577 註冊:2004-04-19 發送簡訊給我 |
再補充最近的文章, 敎你如何製作 Resource DLL
http://delphi.ktop.com.tw/topic.php?topic_id=73755
|
hct47
一般會員 ![]() ![]() 發表:34 回覆:15 積分:9 註冊:2004-04-23 發送簡訊給我 |
Dear 黑暗破壞神: 我不懂你的意思耶,可以再說清楚一點嗎?謝謝...
|
pceyes
尊榮會員 ![]() ![]() ![]() ![]() ![]() ![]() 發表:70 回覆:657 積分:1140 註冊:2003-03-13 發送簡訊給我 |
|
暗黑破壞神
版主 ![]() ![]() ![]() ![]() ![]() ![]() 發表:9 回覆:2301 積分:1627 註冊:2004-10-04 發送簡訊給我 |
引言: (total bmp count)(bmp0 size)(bmp data)(bmp1 size)(bmp1 data)........(bmpn size)(bmpn data)(total string count)(string1 length)(string1 data)....(stringn length)(stringn)檔案內容是這樣存的。 全部的 bmp 數,(第一個 bmp 所佔的空間, bmp 的資料),....... 全部數串數,(第一個字串所佔空間,字串內容)....... 括號處重複。 這樣你要讀出時。 讀到第一個資料是 共有 N 個 bmp 就知道要去準備 N 個 bmp 的陣列。 然後用個 loop 就可以讀入 全部的 bmp data 同樣的讀法再讀出 string 即可 |
pceyes
尊榮會員 ![]() ![]() ![]() ![]() ![]() ![]() 發表:70 回覆:657 積分:1140 註冊:2003-03-13 發送簡訊給我 |
access檔案, *.mdb
可以放字串, 也可以放影像檔及memo
夠好用的了吧
(玩了一個下午的TIdEncoderMIME; TIdDecoderMIME轉來轉去,實在好笑)
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls,jpeg, ExtDlgs, IdCoder, IdCoder3to4, IdCoderMIME, IdBaseComponent; type TForm1 = class(TForm) Image1: TImage; Memo1: TMemo; Button1: TButton; Button2: TButton; Button3: TButton; OpenPictureDialog1: TOpenPictureDialog; IdEncoderMIME1: TIdEncoderMIME; IdDecoderMIME1: TIdDecoderMIME; Label1: TLabel; procedure Button3Click(Sender: TObject); procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.Button3Click(Sender: TObject); begin if OpenPictureDialog1.Execute then begin Image1.Picture.LoadFromFile(OpenPictureDialog1.FileName); end; end; procedure TForm1.Button1Click(Sender: TObject); var f : TmemoryStream; begin f := TmemoryStream.Create; try image1.Picture.Graphic.SavetoStream(f); f.Position := 0; IdEncoderMIME1 Memo1.Lines.Text := IdEncoderMIME1.Encode(f); label1.caption := inttostr(length(Memo1.Lines.Text)); finally f.Free; end; end; procedure TForm1.Button2Click(Sender: TObject); var f : TmemoryStream; begin f := TmemoryStream.Create; try IdDecoderMIME1.DecodeToStream(Memo1.Lines.Text,f); f.Position := 0; image1.Picture.Graphic.LoadFromStream(f); finally f.Free; end; end; end.努力會更接近成功
------
努力會更接近成功 |
hct47
一般會員 ![]() ![]() 發表:34 回覆:15 積分:9 註冊:2004-04-23 發送簡訊給我 |
|
pceyes
尊榮會員 ![]() ![]() ![]() ![]() ![]() ![]() 發表:70 回覆:657 積分:1140 註冊:2003-03-13 發送簡訊給我 |
|
hct47
一般會員 ![]() ![]() 發表:34 回覆:15 積分:9 註冊:2004-04-23 發送簡訊給我 |
|
wameng
版主 ![]() ![]() ![]() ![]() ![]() ![]() 發表:31 回覆:1336 積分:1188 註冊:2004-09-16 發送簡訊給我 |
|
hct47
一般會員 ![]() ![]() 發表:34 回覆:15 積分:9 註冊:2004-04-23 發送簡訊給我 |
Dear all:
不好意思,一直大擾大家,我有用TFilestream試過了字串,可以使用,但是我用Tbitmap時,好像都存不到圖檔耶,底下是我的程式碼:
procedure TForm1.SaveFile1Click(Sender: TObject); var ms:Tmemorystream; i,j,pictC:integer; FileStream : TFileStream; FileName : String; begin Filename:='D:\datdata\data.hct'; FileStream:=TFileStream.create(FileName,fmCreate); for i:=0 to 10 do begin FileStream.Write(selpic.SelectPic[i],sizeof(selpic.SelectPic[i])); end; FileStream.Free ; //selpic.SelectPic[i]是 TBitmap陣列 end; procedure TForm1.LoadFile1Click(Sender: TObject); var ms:Tmemorystream; filestream:Tfilestream; Filename:string; i:integer; begin Filename:='D:\datdata\data.hct'; FileStream :=TFileStream.Create(FileName,fmopenread); FileStream.Position :=0; for i:=0 to 10 do begin selpic.SelectPic[i]:=Tbitmap.Create; end; FileStream.Read(selpic.SelectPic,Sizeof(selpic.SelectPic)); image0.Canvas.StretchDraw(Rect(0,0,image0.Width,image0.Height),selpic.SelectPic[0]); image1.Canvas.StretchDraw(Rect(0,0,image1.Width,image1.Height),selpic.SelectPic[1]); FileStream.Free ; end;image0和image1的圖檔show出來的圖都是白的...沒東西 |
jimmy_wei
高階會員 ![]() ![]() ![]() ![]() 發表:9 回覆:176 積分:147 註冊:2003-08-28 發送簡訊給我 |
|
pceyes
尊榮會員 ![]() ![]() ![]() ![]() ![]() ![]() 發表:70 回覆:657 積分:1140 註冊:2003-03-13 發送簡訊給我 |
|
pceyes
尊榮會員 ![]() ![]() ![]() ![]() ![]() ![]() 發表:70 回覆:657 積分:1140 註冊:2003-03-13 發送簡訊給我 |
|
malanlk
尊榮會員 ![]() ![]() ![]() ![]() ![]() ![]() 發表:20 回覆:694 積分:577 註冊:2004-04-19 發送簡訊給我 |
|
hct47
一般會員 ![]() ![]() 發表:34 回覆:15 積分:9 註冊:2004-04-23 發送簡訊給我 |
|
pceyes
尊榮會員 ![]() ![]() ![]() ![]() ![]() ![]() 發表:70 回覆:657 積分:1140 註冊:2003-03-13 發送簡訊給我 |
昨天我就知d6沒有IdDecoderMIME
所以馬上裝d7來試試 我又玩了一個下午, 找了好多資料 以下的碼支持bmp及jpeg
------
努力會更接近成功 |
pceyes
尊榮會員 ![]() ![]() ![]() ![]() ![]() ![]() 發表:70 回覆:657 積分:1140 註冊:2003-03-13 發送簡訊給我 |
剛才到深度歷險找到這個,很像你要的東東
------
努力會更接近成功 |
hct47
一般會員 ![]() ![]() 發表:34 回覆:15 積分:9 註冊:2004-04-23 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |