oracle 大对象
来源:互联网 发布:编程一个球从100米落下 编辑:程序博客网 时间:2024/04/30 13:02
1、bfilename(directory,filename) return bfile
2、dbms_lob.loadclobfromfile
dbms_lob.loadclobfromfile
(
dest_lob in out clob,
src_bfile in bfile,
amount in number,
dest_offset in out number,
src_offset in out number,
bfile_csid in number,
lang_context in out number,
warning out number
)
amount:=dbms_lob.lobmaxsize;
bfile_csid number :=dbms_lob.default_csid;
lang_context number := dbms_lob.default_lang_ctx;
warning number:=dbms_lob.warn_inconvertible_char
实例:
Declare
dest_lob t_clob.col_clob%Type;
src_bfile Bfile;
amount Number;
dest_offset Number:=1;
src_offset Number:=1;
bfile_csid Number:= dbms_lob.default_csid;
lang_context Number:=dbms_lob.default_lang_ctx;
warning Number:=dbms_lob.warn_inconvertible_char;
Begin
Select col_clob Into dest_lob From t_clob Where Id=1 For Update ;
src_bfile:=Bfilename('DIR','b.txt');
dbms_lob.open(src_bfile,dbms_lob.file_readonly);
amount:=dbms_lob.getlength(src_bfile);
dbms_lob.loadclobfromfile(dest_lob,src_bfile,amount,dest_offset,src_offset,bfile_csid,lang_context,warning);
dbms_lob.close(src_bfile);
Commit;
End;
3、dbms_lob.getlength 获取指定LOB的字节长度
dbms_lob.getlength
(
lob in blob
) return number;
dbms_lob.getlength
(
lob in clob|nclob character set any_cs
) return number;
dbms_lob.getlength
(
bfile in bfile
) return number;
src_blob Blob;
src_clob Clob;
src_bfile Bfile;
amount_blob Number;
amount_clob Number;
amount_bfile Number;
Begin
Select col_blob Into src_blob From t_blob Where Id=1;
amount_blob:=dbms_lob.getlength(src_blob);
dbms_output.put_line('amount_blob='||amount_blob);
Select col_clob Into src_clob From t_clob Where Id=6;
amount_clob:=dbms_lob.getlength(src_clob);
dbms_output.put_line('amount_clob='||amount_clob);
src_bfile:=Bfilename('DIR','b.txt');
amount_bfile:=dbms_lob.getlength(src_bfile);
dbms_output.put_line('amount_bfile='||amount_bfile);
End;
dbms_lob.loadblobfromfile
(
dest_lob In Out Blob,
src_bfile In Bfile,
amount In Number,
dest_offset In Out Number,
src_offset In Out Number
)
实例:
Declare
dest_lob Blob;
src_bfile Bfile;
amount Number;
dest_offset Number:=1;
src_offset Number:=1;
seqid Number;
Begin
seqid:=seq_id.nextval;
Insert Into t_blob Values(seqid,empty_blob());
Select col_blob Into dest_lob From t_blob Where Id=seqid For Update;
src_bfile:=Bfilename('DIR','壁纸.jpg');
--src_bfile:=Bfilename('DIR','b.txt');
dbms_lob.open(src_bfile,dbms_lob.file_readonly);
amount:=dbms_lob.getlength(src_bfile);
dbms_output.put_line(amount);
dbms_lob.loadblobfromfile(dest_lob,src_bfile,amount,dest_offset,src_offset);
dbms_lob.close(src_bfile);
Commit;
End;
5、dbms_lob.open
dbms_lob.open(
(
Lob In Out Blob,
open_mode In Number
)
dbms_lob.open(
(
Lob In Out Clob | Nclob Character Set any_cs,
open_mode In Number
)
dbms_lob.open(
(
Bfile In Out Bfile,
open_mode In Number
)
open_mode:
dbms_lob.file_readonly 0
dbms_lob.lob_readonly 1
dbms_lob.lob_readwrite 0
6、dbms_lob.close
dbms_lob.close
(
Lob In Out Blob
)
dbms_lob.close
(
Lob In Out Clob|Nclob Character Set any_cs
)
dbms_lob.close
(
Bfile In Out Bfile
)
7、dbms_lob.isopen 返回 1打开 0未打开
dbms_lob.isopen
(
Lob In Blob
) Return Number
dbms_lob.isopen
(
Lob In Clob|Nclob Character Set any_cs
) Return Number
dbms_lob.isopen
(
Bfile In Bfile
) Return Number
实例:
Declare
src_blob Blob;
src_clob Clob;
src_nclob Nclob;
src_bfile Bfile;
amount_blob Number;
amount_clob Number;
amount_nclob Number;
amount_bfile Number;
Begin
Select col_blob Into src_blob From t_blob Where Id=1;
dbms_lob.open(src_blob,dbms_lob.lob_readonly);
If dbms_lob.Isopen(src_blob)=1 Then
dbms_output.put_line('src_blob:'||'已打开');
Else
dbms_output.put_line('src_blob:'||'未打开');
End If;
dbms_lob.close(src_blob);
Select col_clob Into src_clob From t_clob Where Id=6;
dbms_lob.open(src_clob,dbms_lob.file_readonly);
If dbms_lob.Isopen(src_clob)=1 Then
dbms_output.put_line('src_clob:'||'已打开');
Else
dbms_output.put_line('src_clob:'||'未打开');
End If;
dbms_lob.close(src_clob);
Select col_nclob Into src_nclob From t_nclob Where Id=7;
-- dbms_lob.open(src_nclob,dbms_lob.file_readonly);
If dbms_lob.Isopen(src_nclob)=1 Then
dbms_output.put_line('src_nclob:'||'已打开');
Else
dbms_output.put_line('src_nclob:'||'未打开');
End If;
--dbms_lob.close(src_nclob);
src_bfile:=Bfilename('DIR','b.txt');
dbms_lob.open(src_bfile,dbms_lob.file_readonly);
If dbms_lob.Isopen(src_bfile)=1 Then
dbms_output.put_line('src_bfile:'||'已打开');
Else
dbms_output.put_line('src_bfile:'||'未打开');
End If;
dbms_lob.close(src_bfile);
End;
输出:
src_blob:已打开
src_clob:已打开
src_nclob:未打开
src_bfile:已打开
8、dbms_lob.read
dbms_lob.read
(
Lob In Blob|Clob|Nclob|Bfile,
amount In Out Number,
Offset In Number,
Buffer Out Raw
)
实例:
Declare
src_blob Blob;
src_clob Clob;
src_bfile Bfile;
amount_blob Number:=5;
str Varchar2(1000);
Begin
--blob 图像数据
Select col_blob Into src_blob From t_blob Where Id=1;
dbms_lob.open(src_blob,dbms_lob.file_readonly);
dbms_lob.read(src_blob,amount_blob,1,str);
dbms_output.put_line('blob 图像数据:'||str);
dbms_lob.close(src_blob);
--blob 文字数据
Select col_blob Into src_blob From t_blob Where Id=4;
dbms_lob.open(src_blob,dbms_lob.file_readonly);
dbms_lob.read(src_blob,amount_blob,1,str);
dbms_output.put_line('blob 文字数据:'||str);
dbms_lob.close(src_blob);
--clob 文字数据
Select col_clob Into src_clob From t_clob Where Id=6;
dbms_lob.open(src_clob,dbms_lob.file_readonly);
dbms_lob.read(src_clob,amount_blob,1,str);
dbms_output.put_line('clob 文字数据:'||str);
dbms_lob.close(src_clob);
--bfile 文字数据
src_bfile:=Bfilename('DIR','b.txt');
dbms_lob.open(src_bfile,dbms_lob.file_readonly);
dbms_lob.read(src_bfile,amount_blob,1,str);
dbms_output.put_line('bfile 文字数据:'||str);
dbms_lob.close(src_bfile);
--bfile 图像数据
src_bfile:=Bfilename('DIR','壁纸.jpg');
dbms_lob.open(src_bfile,dbms_lob.file_readonly);
dbms_lob.read(src_bfile,amount_blob,1,str);
dbms_output.put_line('bfile 图像数据:'||str);
dbms_lob.close(src_bfile);
End;
输出:
blob 图像数据:FFD8FFE000
blob 文字数据:B1D8D0EBD3
clob 文字数据:必须有固定
bfile 文字数据:B1D8D0EBD3
bfile 图像数据:FFD8FFE000
9、dbms_lob.append
dbms_lob.append
(
dest_lob in out blob,
src_lob in blob
)
dbms_lob.append
(
dest_lob in out clob|nclob character set any_cs,
src_lob in clob|nclob character set dest_lob%charaset
)
实例1:
Declare
dest_lob Blob;
dest_lob1 Blob;
dest_lob2 Blob;
src_bfile Bfile;
amount Number;
dest_offset Number:=1;
src_offset Number:=1;
Begin
--更改dest_lob1的值
Select colblob Into dest_lob1 From t_blob Where Id=1 For Update;
src_bfile:=Bfilename('DIR','壁纸.jpg');
amount:=dbms_lob.getlength(src_bfile);
dbms_lob.open(src_bfile,dbms_lob.lob_readonly);
dbms_lob.loadblobfromfile(dest_lob1,src_bfile,amount,dest_offset,src_offset);
dbms_lob.close(src_bfile);
Commit;
--更改dest_lob1的值
dest_offset:=1;
src_offset:=1;
Select colblob Into dest_lob2 From t_blob Where Id=2 For Update;
src_bfile:=Bfilename('DIR','壁纸.jpg');
amount:=dbms_lob.getlength(src_bfile);
dbms_lob.open(src_bfile,dbms_lob.lob_readonly);
dbms_lob.loadblobfromfile(dest_lob2,src_bfile,amount,dest_offset,src_offset);
dbms_lob.close(src_bfile);
Commit;
--将dest_lob1,dest_lob2添加到dest_lob中
Select colblob Into dest_lob From t_blob Where Id=3 For Update;
dbms_output.put_line('dest_lob:'||dbms_lob.getlength(dest_lob));
dbms_lob.append(dest_lob,dest_lob1);
dbms_lob.append(dest_lob,dest_lob2);
Commit;
dbms_output.put_line('dest_lob1:'||dbms_lob.getlength(dest_lob1));
dbms_output.put_line('dest_lob2:'||dbms_lob.getlength(dest_lob2));
dbms_output.put_line('dest_lob:'||dbms_lob.getlength(dest_lob));
End;
输出:
dest_lob:0
dest_lob1:160999
dest_lob2:160999
dest_lob:321998
实例2:
Declare
dest_lob Blob;
dest_lob4 Blob;
dest_lob5 Blob;
src_bfile Bfile;
amount Number;
dest_offset Number:=1;
src_offset Number:=1;
Begin
--更改dest_lob1的值
Select colblob Into dest_lob4 From t_blob Where Id=4 For Update;
src_bfile:=Bfilename('DIR','b.txt');
amount:=dbms_lob.getlength(src_bfile);
dbms_lob.open(src_bfile,dbms_lob.lob_readonly);
dbms_lob.loadblobfromfile(dest_lob4,src_bfile,amount,dest_offset,src_offset);
dbms_lob.close(src_bfile);
Commit;
--更改dest_lob1的值
dest_offset:=1;
src_offset:=1;
Select colblob Into dest_lob5 From t_blob Where Id=5 For Update;
src_bfile:=Bfilename('DIR','c.txt');
amount:=dbms_lob.getlength(src_bfile);
dbms_lob.open(src_bfile,dbms_lob.lob_readonly);
dbms_lob.loadblobfromfile(dest_lob5,src_bfile,amount,dest_offset,src_offset);
dbms_lob.close(src_bfile);
Commit;
--将dest_lob1,dest_lob2添加到dest_lob中
Select colblob Into dest_lob From t_blob Where Id=6 For Update;
dbms_output.put_line('dest_lob:'||dbms_lob.getlength(dest_lob));
dbms_lob.append(dest_lob,dest_lob4);
dbms_lob.append(dest_lob,dest_lob5);
Commit;
dbms_output.put_line('dest_lob4:'||dbms_lob.getlength(dest_lob4));
dbms_output.put_line('dest_lob5:'||dbms_lob.getlength(dest_lob5));
dbms_output.put_line('dest_lob:'||dbms_lob.getlength(dest_lob));
End;
输出:
dest_lob:0
dest_lob4:14
dest_lob5:2
dest_lob:16
实例3:
Declare
dest_lob clob;
dest_lob1 clob;
dest_lob2 clob;
src_bfile Bfile;
amount Number;
dest_offset Number:=1;
src_offset Number:=1;
bfile_csid Number:=dbms_lob.default_csid;
lang_context Number:=dbms_lob.default_lang_ctx;
warning Number:=dbms_lob.warn_inconvertible_char;
Begin
--更改dest_lob1的值
Select colclob Into dest_lob1 From t_clob Where Id=1 For Update;
src_bfile:=Bfilename('DIR','b.txt');
amount:=dbms_lob.getlength(src_bfile);
dbms_lob.open(src_bfile,dbms_lob.lob_readonly);
dbms_lob.loadclobfromfile(dest_lob1,src_bfile,amount,dest_offset,src_offset,bfile_csid,lang_context,warning);
dbms_lob.close(src_bfile);
Commit;
--更改dest_lob2的值
dest_offset:=1;
src_offset:=1;
Select colclob Into dest_lob2 From t_clob Where Id=2 For Update;
src_bfile:=Bfilename('DIR','c.txt');
amount:=dbms_lob.getlength(src_bfile);
dbms_lob.open(src_bfile,dbms_lob.lob_readonly);
dbms_lob.loadclobfromfile(dest_lob2,src_bfile,amount,dest_offset,src_offset,bfile_csid,lang_context,warning);
dbms_lob.close(src_bfile);
Commit;
--将dest_lob1,dest_lob2添加到dest_lob中
Select colclob Into dest_lob From t_clob Where Id=3 For Update;
dbms_output.put_line('dest_lob:'||dbms_lob.getlength(dest_lob));
dbms_lob.append(dest_lob,dest_lob1);
dbms_lob.append(dest_lob,dest_lob2);
Commit;
dbms_output.put_line('dest_lob1:'||dbms_lob.getlength(dest_lob1));
dbms_output.put_line('dest_lob2:'||dbms_lob.getlength(dest_lob2));
dbms_output.put_line('dest_lob:'||dbms_lob.getlength(dest_lob));
End;
输出:
dest_lob:0
dest_lob1:7
dest_lob2:2
dest_lob:9
10、dbms_lob.compare 返回0相同 否则不相同
dbms_lob.compare
(
lob1 in blob,
lob2 in blob,
amount in number,
offset1 in number,
offset2 in number
) Return number
dbms_lob.compare
(
lob1 in clob|nclob character set any_cs,
lob2 in clob|nclob charaset set lob1%charset ,
amount in number,
offset1 in number,
offset2 in number
) Return number
dbms_lob.compare
(
lob1 in bfile,
lob2 in bfile,
amount in number,
offset1 in number,
offset2 in number
) Return number
11、dbms_lob.copy
dbms_lob.copy
(
dest_lob In Out Blob,
src_lob In Blob,
amount In Number,
dest_offset In Number,
src_offset In Number
)
dbms_lob.copy
(
dest_lob In Out clob|Nclob Character Set any_cs,
src_lob In clob|Nclob Character Set dest_lob%Charset,
amount In Number,
dest_offset In Number,
src_offset In Number
)
实例1:
Declare
dest_lob1 Blob;
dest_lob2 Blob;
amount Number;
Offset Number;
str Varchar2(10);
Begin
Select colblob Into dest_lob1 From t_blob Where Id=3 For Update ;
Select colblob Into dest_lob2 From t_blob Where Id=4;
dbms_lob.open(dest_lob1,dbms_lob.lob_readonly);
amount:=dbms_lob.getlength(dest_lob1);
dbms_lob.read(dest_lob1,amount,1,str);
dbms_lob.close(dest_lob1);
dbms_output.put_line(str);
dbms_lob.open(dest_lob2,dbms_lob.lob_readonly);
amount:=dbms_lob.getlength(dest_lob2);
dbms_lob.read(dest_lob2,amount,1,str);
dbms_lob.close(dest_lob2);
dbms_output.put_line(str);
dbms_lob.copy(dest_lob1,dest_lob2,2,1,2);
Commit;
dbms_lob.open(dest_lob1,dbms_lob.lob_readonly);
amount:=dbms_lob.getlength(dest_lob1);
dbms_lob.read(dest_lob1,amount,1,str);
dbms_lob.close(dest_lob1);
dbms_output.put_line(str);
End;
输出:
616263
616363
636363
实例2:
Declare
dest_lob1 clob;
dest_lob2 clob;
amount Number;
Offset Number;
str Varchar2(10);
Begin
Select colclob Into dest_lob1 From t_clob Where Id=1 For Update ;
Select colclob Into dest_lob2 From t_clob Where Id=2;
dbms_lob.open(dest_lob1,dbms_lob.lob_readonly);
amount:=dbms_lob.getlength(dest_lob1);
dbms_lob.read(dest_lob1,amount,1,str);
dbms_lob.close(dest_lob1);
dbms_output.put_line(str);
dbms_lob.open(dest_lob2,dbms_lob.lob_readonly);
amount:=dbms_lob.getlength(dest_lob2);
dbms_lob.read(dest_lob2,amount,1,str);
dbms_lob.close(dest_lob2);
dbms_output.put_line(str);
dbms_lob.copy(dest_lob1,dest_lob2,2,1,2);
Commit;
dbms_lob.open(dest_lob1,dbms_lob.lob_readonly);
amount:=dbms_lob.getlength(dest_lob1);
dbms_lob.read(dest_lob1,amount,1,str);
dbms_lob.close(dest_lob1);
dbms_output.put_line(str);
End;
输出:
abc
acc
ccc
12、dbms_lob.filecloseall 关闭所有已打开的BFILE对象
Declare
src_bfile1 Bfile;
src_bfile2 Bfile;
Begin
src_bfile1:=Bfilename('DIR','b.txt');
src_bfile2:=Bfilename('DIR','c.txt');
dbms_lob.open(src_bfile1,0);
dbms_lob.open(src_bfile2,0);
dbms_lob.filecloseall;
End;
13、dbms_lob.fileexists 检测bfile对象所对应的外部文件是否存在,返回1存在 0不存在
dbms_lob.fileexists
(
Lob In Bfile
) Return Number
实例:
Declare
src_bfile1 Bfile;
src_bfile2 Bfile;
Begin
src_bfile1:=Bfilename('DIR','b.txt');
src_bfile2:=Bfilename('DIR','c.txt');
If dbms_lob.fileexists(src_bfile1)=1 Then
dbms_output.put_line('存在');
Else
dbms_output.put_line('不存在');
End If;
If dbms_lob.fileexists(src_bfile2)=1 Then
dbms_output.put_line('存在');
Else
dbms_output.put_line('不存在');
End If;
End;
输出:
存在
不存在
14、dbms_lob.filegetname 返回bfile对象的目录和文件名
dbms_lob.filegetname
(
Bfile In Bfile,
Directory Out Varchar2,
filename Out Varchar2
)
实例:
Declare
src_bfile Bfile;
strDir Varchar2(100);
strFile Varchar2(100);
Begin
src_bfile:=Bfilename('DIR','b.txt');
dbms_lob.filegetname(src_bfile,strdir,strfile);
dbms_output.put_line(strdir);
dbms_output.put_line(strfile);
End;
输出:
DIR
b.txt
15、dbms_lob.erase
dbms_lob.erase
(
Lob In Out Blob,
amount In Out Number,
Offset In Number
)
dbms_lob.erase
(
Lob In Out Clob|Nclob,
amount In Out Number,
Offset In Number
)
实例1:
Declare
dest_lob Blob;
amount Number;
Offset Number;
str Varchar2(100);
Begin
Select colblob Into dest_lob From t_blob Where Id=4 For Update ;
dbms_lob.open(dest_lob,dbms_lob.lob_readonly);
amount:=dbms_lob.getlength(dest_lob);
dbms_lob.read(dest_lob,amount,1,str);
dbms_lob.close(dest_lob);
dbms_output.put_line(str);
amount:=1;
dbms_lob.erase(dest_lob,amount,2);
amount:=dbms_lob.getlength(dest_lob);
dbms_lob.open(dest_lob,dbms_lob.lob_readonly);
dbms_lob.read(dest_lob,amount,1,str);
dbms_lob.close(dest_lob);
dbms_output.put_line(str);
End;
输出:
616363
610063
实例2:
Declare
dest_lob clob;
amount Number;
Offset Number;
str Varchar2(100);
Begin
Select colclob Into dest_lob From t_clob Where Id=2 For Update ;
dbms_lob.open(dest_lob,dbms_lob.lob_readonly);
amount:=dbms_lob.getlength(dest_lob);
dbms_lob.read(dest_lob,amount,1,str);
dbms_lob.close(dest_lob);
dbms_output.put_line(str);
amount:=1;
dbms_lob.erase(dest_lob,amount,2);
amount:=dbms_lob.getlength(dest_lob);
dbms_lob.open(dest_lob,dbms_lob.lob_readonly);
dbms_lob.read(dest_lob,amount,1,str);
dbms_lob.close(dest_lob);
dbms_output.put_line(str);
End;
输出:
acc
a c
16、dbms_lob.getCHUNKsize(lob in blob|clob|nclob )
17、dbms_lob.get_storage_limit(lob in blob|clob|nclob)
18、dbms_lob.instr
dbms_lob.instr
(
Lob In Blob,
pattern In Raw,
Offset In Number,
nth In Number
) Return Number
dbms_lob.instr
(
Lob In clob|Nclob Character Set any_cs,
pattern In Varchar2 Character Set Lob%Charset,
Offset In Number,
nth In Number
) Return Number
dbms_lob.instr
(
Bfile In Bfile,
pattern In Raw,
Offset In Number,
nth In Number
) Return Number
实例:
Declare
src_lob Blob;
amount Number;
Offset Number:=1;
str Varchar2(100);
Begin
--src_lob内容为:abc
Select colblob Into src_lob From t_blob Where Id=3;
dbms_lob.open(src_lob,0);
amount:=dbms_lob.getlength(src_lob);
dbms_output.put_line(amount);
dbms_lob.read(src_lob,amount,Offset,str);
dbms_lob.close(src_lob);
dbms_output.put_line(str);
dbms_output.put_line(dbms_lob.instr(src_lob,'62',2,1));
End;
输出:
3
616263
2
19、dbms_lob.write
dbms_lob.write
(
Lob In Out Blob ,
amount In Number,
Offset In Number,
Buffer In Raw
)
dbms_lob.write
(
Lob In Out clob|Nclob Character Set any_cs ,
amount In Number,
Offset In Number,
Buffer In Raw Character Set Lob%Charset
)
实例1:
Declare
src_lob Blob;
amount Number;
Offset Number:=1;
str Varchar2(100);
Begin
Select colblob Into src_lob From t_blob Where Id=3 For Update ;
dbms_lob.open(src_lob,dbms_lob.lob_readwrite);
dbms_lob.write(src_lob,2,2,'616263');
dbms_lob.close(src_lob);
End;
--将abc 616263 更新为aab 616162
实例2:
Declare
src_lob clob;
Begin
Select colclob Into src_lob From t_clob Where Id=1 For Update ;
dbms_lob.open(src_lob,dbms_lob.lob_readwrite);
dbms_lob.write(src_lob,2,2,'abc');
dbms_lob.close(src_lob);
End;
--将abc更新为aab
20、dbms_lob.writeappend
dbms_lob.writeappend
(
Lob In Out Blob ,
amount In Number,
Buffer In Raw
)
dbms_lob.writeappend
(
Lob In Out clob|Nclob Character Set any_cs ,
amount In Number,
Buffer In Raw Character Set Lob%Charset
)
22、dbms_lob.substr
dbms_lob.substr
(
Lob In Blob,
amount In Number,
Offset In Number
) Return Raw
dbms_lob.substr
(
Bfile In Bfile,
amount In Number,
Offset In Number
) Return Raw
dbms_lob.substr
(
Lob In Clob|Nclob Character Set any_cs,
amount In Number,
Offset In Number
) Return Varchar2 Character ste Lob%Charset
- ORACLE大对象
- Oracle中的大对象
- oracle大对象
- Oracle大对象处理
- oracle 大对象
- Oracle:大对象LOB
- oracle存取blob大对象
- Oracle大对象的使用
- Oracle大对象的使用
- ORACLE LOB大对象处理
- ORACLE LOB 大对象处理
- Oracle保存大对象BLOB
- ORACLE LOB 大对象处理
- ORACLE LOB 大对象处理
- ORACLE LOB 大对象处理
- ORACLE LOB 大对象处理
- ORACLE LOB 大对象处理
- ORACLE LOB大对象流
- 三、Linux spi 设备驱动
- 基础
- 利用全注解实现ssh的一个完整例子
- C语言异常处理——setjmp & longjmp
- android studio 测试(增)
- oracle 大对象
- DTO模式的研究
- CodeForces 551 C. GukiZ hates Boxes(二分+贪心)
- 在ubuntu 12.04上安裝Redmine
- Python安装模块出现问题UnicodeDecodeError的解决方法
- 2015062407 - 17824
- markdown基本语法熟悉
- django html 加载静态 js css(windows) pycharm
- How To Install / Configure VNC Server On CentOS 7.