java文件字元串
❶ 請問java如何改變字元串的編碼方式
byte[] b=string.getBytes("GB2312");//使用GB2312編碼方式對字元串string進行編碼
//這時要想將位元組數組b的內容正確解碼只能使用GB2312的編碼方式進行解碼,即
String str=new String(b,"GB2312");//這里若使用UTF-8編碼方式來進行解碼就會亂碼
//將eclipse默認的編碼方式改為UTF-8,只是用該編碼方式對.java源文件進行編碼保存
//這個對new String(string.getBytes("GB2312"),"UTF-8")沒啥影響的
//因為從java源文件獲取字元串string時,已經通過UTF-8編碼方式進行解碼了
//而string.getBytes("GB2312")是使用指定的編碼方式對字元串string進行從新編碼
//這兩者之間沒啥關系的
❷ java中怎樣將文件的內容讀取成字元串
java中有四種將文件的內容讀取成字元串
方式一:
Java code
/**
*以位元組為單位讀取文件,常用於讀二進制文件,如圖片、聲音、影像等文件。
*當然也是可以讀字元串的。
*/
/*貌似是說網路環境中比較復雜,每次傳過來的字元是定長的,用這種方式?*/
publicStringreadString1()
{
try
{
//FileInputStream用於讀取諸如圖像數據之類的原始位元組流。要讀取字元流,請考慮使用FileReader。
FileInputStreaminStream=this.openFileInput(FILE_NAME);
ByteArrayOutputStreambos=newByteArrayOutputStream();
byte[]buffer=newbyte[1024];
intlength=-1;
while((length=inStream.read(buffer)!=-1)
{
bos.write(buffer,0,length);
//.write方法SDK的解釋是m.
//當流關閉以後內容依然存在
}
bos.close();
inStream.close();
returnbos.toString();
//為什麼不一次性把buffer得大小取出來呢?為什麼還要寫入到bos中呢?returnnew(buffer,"UTF-8")不更好么?
//returnnewString(bos.toByteArray(),"UTF-8");
}
}
方式二:
Java code
方式四:
Java code
/*InputStreamReader+BufferedReader讀取字元串,InputStreamReader類是從位元組流到字元流的橋梁*/
/*按行讀對於要處理的格式化數據是一種讀取的好方式*/
()
{
intlen=0;
StringBufferstr=newStringBuffer("");
Filefile=newFile(FILE_IN);
try{
FileInputStreamis=newFileInputStream(file);
InputStreamReaderisr=newInputStreamReader(is);
BufferedReaderin=newBufferedReader(isr);
Stringline=null;
while((line=in.readLine())!=null)
{
if(len!=0)//處理換行符的問題
{
str.append(" "+line);
}
else
{
str.append(line);
}
len++;
}
in.close();
is.close();
}catch(IOExceptione){
//TODOAuto-generatedcatchblock
e.printStackTrace();
}
returnstr.toString();
}
❸ java怎麼將字元串寫入到文件
使用Java中的File類,url為文件的絕對地址,str為輸入的字元串內容。
代碼如下圖所示:
String str="i love china!"
File txt=new File("url");
if(!txt.exists()){
txt.createNewFile();
}
byte bytes[]=new byte[512];
bytes=str.getBytes(); //新加的
int b=str.length(); //改
FileOutputStream fos=new FileOutputStream(txt);
fos.write(bytes,0,b);
fos.close();
❹ Java中怎樣找到文件中指定字元串並替換
java的String類中使用Replace方法可以將字元串中的特定字元或者文字替換成為我們想要的內容。
下面我們就用實例說明下Replace的用法。如何替換文字、特殊字元、以及如何替換第一個匹配對象。
1.定義一個類文件StringReplace.java
2.類內容如下:
public class StringReplace
{
public static void main(String[] args){
String info = "百d度,經3驗,歡迎H你";
info = info.replace(',',':');//將字元慧戚陪串,替換成":"
System.out.println(info);//替換後輸出
info=info.replace("歡迎","需要");//將歡迎二字換成需要
System.out.println(info);//替換後輸出
info=info.replaceAll("[0-9a-zA-Z]","\\$");//使用正則表達式將數字字母替換為仔運$
System.out.println(info);//輸出結果
info = info.replaceFirst("\\$","#"); //使用正則表達式將第一個$替換為#
System.out.println(info);//輸出結果
}
}
3.下面我們就可以直接在命令行中用java命令或java運行環境來編譯運行上面的代碼啦。希前蠢望對java初學者有幫助。