導航:首頁 > 文件教程 > java怎麼獲取文件的位元組數

java怎麼獲取文件的位元組數

發布時間:2023-09-07 10:35:05

『壹』 java讀取txt文件每一行多少個位元組


importjava.io.File;
importjava.io.RandomAccessFile;

/**
*2016年8月31日下午7:00:37
*
*@author3306TODO計算位元組數
*
*/
publicclassFileUtil{

publicstaticvoidmain(String[]args){
StringfilePath="d:/test.txt";//d盤必須存在test.txt文件
readEachLine(filePath);

}

/**
*列印文件每一行的位元組數
*
*@paramfilePath
*文件路徑
*/
privatestaticvoidreadEachLine(StringfilePath){
try{

Filefile=newFile(filePath);

if(file.exists()){//文件存在

RandomAccessFileaccessFile=newRandomAccessFile(file,"r");//只賦予讀的許可權
Stringline="";
longlineIndex=1;

while(null!=(line=accessFile.readLine())){
System.out.println("line"+(lineIndex++)+":"+line.getBytes().length);//列印行號和位元組數
}

accessFile.close();

}
}catch(Exceptione){
e.printStackTrace();
}
}

}

『貳』 用java如何讀取一個文件的指定位元組位置的數據

可以使用RandomAccessFile類。例如要從100位元組開始輸出工作目錄下的.txt文件的類容。
package konw.test1;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.RandomAccessFile;
public class Test1
{
public static void main(String[] args)
{
long pos = 100;
try
{
String str = "";
RandomAccessFile randomAccessFile = new RandomAccessFile("data.txt", "rw");
randomAccessFile.seek(pos);//將文件流的位置移動到pos位元組處
while( (str = randomAccessFile.readLine()) != null)
{
System.out.println(str);
}
randomAccessFile.close();

} catch (FileNotFoundException e)
{
e.printStackTrace();
} catch (IOException e)
{
e.printStackTrace();
}
}
}

『叄』 (java)如何獲取字元串的位元組數!

(java)如何獲取字元串的位元組數!, java怎樣獲取字元串的位元組數

字元串是可以轉變成位元組數組,然後統計一下位元組數組的長度即可,參考如下代碼
Java語言中,中文字元所佔的位元組數取決於字元的編碼方式,一般情況下,採用ISO8859-1編碼方式時,一個中文字元與一個英文字元一樣只佔1個位元組;採用GB2312或GBK編碼方式時,一個中文字元佔2個位元組;而採用UTF-8編碼方式時,一個中文字元會佔3個位元組。
public static void main(String []args) throws UnsupportedEncodingException {
運行結果:2
System.out.println("測試".getBytes("ISO8859-1").length);
運行結果:4
System.out.println("測試".getBytes("GB2312").length);
運行結果:4
System.out.println("測試".getBytes("GBK").length);
運行結果:6
System.out.println("測試".getBytes("UTF-8").length);
}

c# 獲取字元串的位元組數

C#截取字元串位元組數 代碼如下:
public int bytelenght(string str)
{
byte[] bytestr = System.Text.Encoding.Unicode.GetBytes(str);
int j = 0;
for (int i = 0; i < bytestr.GetLength(0); i++)
{
if (i % 2 == 0)
{
j++;
}
else
{
if (bytestr[i] > 0)
{
j++;
}
}
}
return j;
}
謝謝採納

c++ 怎樣獲取一串字元串的字元數,不是位元組數

定義一個字元數組,然後根據字元長度循環得到字元
比如char ch[20];
這個20可以用字元實際長度getlength()獲取
然後再循環獲取字元
ch[i]

c#求字元串的位元組數

其實用不著那麼復雜計算的。注意:C#中string.Length只是計算字元串「字元」的個數,不計算位元組;但是漢字兩個位元組+數字(英文字元)一個位元組,才是6個,簡單的代碼如下: byte[] bytes = Encoding.Default.GetBytes("1243我"); Default(根據自己究竟是漢字還是數字等,自動合理分配內存所需要的位元組空間)
Console.WriteLine(bytes.Length);

C#如何獲得存放字元串的位元組數組?

byte[] System.Text.Encoding.Default.GetBytes(string s)

如何計算一個Unicode字元串的位元組數

你就是一個byte一個byte讀取的吧?一個漢字兩個byte(不含surrogate情況),文件中存兩個byte,你從文件中讀取2個byte,就是這樣 查看原帖>>

java下字元串和位元組數組如何轉換?

strRead = String.ValueOf(strRead.toCharArray(), 0, byBuffer.length]); 2、字元串轉換成位元組數組 byte[] byBuffer = new byte[200]; byBuffer= strInput.getBytes();注意:如果字元串裡面含有中文,要特別注意,在android系統下,默認是UTF8編碼,一個中文字元相當於3個位元組,只有gb2312下一個中文相當於2位元組。

『肆』 用java代碼如何查看本地一個文件的大小

publicstaticvoidgetFileSize(Stringpath){
//傳入文件路徑
Filefile=newFile(path);
//測試此文件是否存在
if(file.exists()){
//如果是文件夾
//這里只檢測了文件夾中第一層如果有需要可以繼續遞歸檢測
if(file.isDirectory()){
intsize=0;
for(Filezf:file.listFiles()){
if(zf.isDirectory())continue;
size+=zf.length();
}
System.out.println("文件夾"+file.getName()+"Size:"+(size/1024f)+"kb");
}else{
System.out.println(file.getName()+"Size:"+(file.length()/1024f)+"kb");
}
//如果文件不存在
}else{
System.out.println("此文件不存在");
}
}

『伍』 Java字元流讀取文檔,統計位元組數,計算字元串出現次數,字元串代替,另存文檔

packagep1;

importjava.io.FileReader;
importjava.io.FileWriter;

publicclassJ_ReadTxt
{
="柳永宋詞.txt";
="景庄婉約.txt";

publicstaticvoidmain(String[]args)
{
[]cs=newchar[1];
intcount=0;
Stringresult="";
try
{
FileReaderfr=newFileReader(LIUYONG);
while(-1!=fr.read(cs))
{
Stringtemp=String.valueOf(cs);
result+=temp;
intb=temp.codePointAt(0);
if(b>127)
{
count+=2;
}
else
{
count++;
}
}
fr.close();
System.out.println("文檔的位元組數:"+count);
Stringtemp=""+result+"";
System.out.println("字元串「柳永」出現的次數:"+(temp.split("u67f3u6c38").length-1));
result=result.replaceAll("u67f3u6c38","u666fu5e84");
FileWriterfw=newFileWriter(JINGZHUANG);
fw.write(result);
fw.flush();
fw.close();
}
catch(Exceptione)
{
e.printStackTrace();
}
}
}

『陸』 java讀取文件時如何獲得已讀取的位元組大小

//查看例子即可。

importjava.awt.BorderLayout;
importjava.awt.Cursor;
importjava.awt.Toolkit;
importjava.awt.event.ActionEvent;
importjava.awt.event.ActionListener;
importjava.beans.PropertyChangeEvent;
importjava.beans.PropertyChangeListener;
importjava.io.File;
importjava.io.FileInputStream;
importjava.io.FileOutputStream;
importjava.io.InputStream;
importjava.io.OutputStream;

importjavax.swing.JButton;
importjavax.swing.JFrame;
importjavax.swing.JProgressBar;
importjavax.swing.SwingWorker;


{
=1L;

privatestaticfinalintMIN=0;

privatestaticfinalintMAX=100;

;

privateJButton;

privateTasktask;

publicBar(Stringtitle)
{
setTitle(title);
setLayout(newBorderLayout());
progressBar=newJProgressBar(MIN,MAX);
progressBar.setValue(MIN);
progressBar.setStringPainted(true);
add(progressBar,BorderLayout.CENTER);
=newJButton("拷貝");
.addActionListener(newActionListener()
{
@Override
publicvoidactionPerformed(ActionEvente)
{
start();
.setEnabled(false);
}
});
add(,BorderLayout.EAST);
}

classTaskextendsSwingWorker<Void,Void>
{
@Override
publicVoiddoInBackground()
{
setProgress(MIN);
Filefile=newFile("a.jpg");
longsize=file.length();
byte[]bts=newbyte[(int)(size/(Math.random()*50+MAX-50))];
intlength=0;
longcLength=0;
try
{
InputStreamstream=newFileInputStream(file);
OutputStreamos=newFileOutputStream(newFile("_aa.jpg"));
while((length=stream.read(bts))>0)
{
os.write(bts,0,length);
cLength+=length;
setProgress((int)(cLength*MAX/size));
Thread.sleep(30);
}
os.flush();
os.close();
stream.close();
}
catch(Exceptione)
{
e.printStackTrace();
}
returnnull;
}

@Override
publicvoiddone()
{
setTitle("拷貝完畢");
Toolkit.getDefaultToolkit().beep();
.setEnabled(true);
setCursor(null);
}
}

publicvoidpropertyChange(PropertyChangeEventevt)
{
if("progress"==evt.getPropertyName())
{
intprogress=(Integer)evt.getNewValue();
progressBar.setValue(progress);
}
}

privatevoidstart()
{
task=newTask();
task.addPropertyChangeListener(this);
task.execute();
setTitle("正在拷貝...");
setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));
}

()
{
Barframe=newBar("Bar");
frame.setAlwaysOnTop(true);
frame.setSize(280,60);
frame.setResizable(false);
frame.setLocationRelativeTo(null);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}

publicstaticvoidmain(String[]args)
{
javax.swing.SwingUtilities.invokeLater(newRunnable()
{
publicvoidrun()
{
createAndShowGUI();
}
});
}
}

『柒』 如何用java讀取一個文件中的位元組

BufferedReader br=new BufferedRead(new FileReader(file))
StringBuffer sb=new StringBuffer();
String line;
while((line=br.readLine())!=null){
sb.append(line);
}

閱讀全文

與java怎麼獲取文件的位元組數相關的資料

熱點內容
榮耀暢玩手環同步qq 瀏覽:475
怎麼向sql中添加資料庫 瀏覽:596
錄歌失敗重啟app什麼意思 瀏覽:522
壓縮文件包怎麼在微信發送 瀏覽:432
mysql資料庫怎麼插入時間值 瀏覽:191
微信視頻不能轉發朋友圈 瀏覽:596
影視後期的app有哪些 瀏覽:956
電子保單數據出錯什麼意思 瀏覽:368
如何以文件下載音樂 瀏覽:438
計算機網路章節練習 瀏覽:999
單片機的外部中斷程序 瀏覽:48
表格批量更名找不到指定文件 瀏覽:869
js的elseif 瀏覽:584
3dmaxvray視頻教程 瀏覽:905
imgtool工具中文版 瀏覽:539
java幫助文件在哪裡 瀏覽:965
win10切換輸入語言 瀏覽:696
haier電視網路用不了怎麼辦 瀏覽:361
蘋果6手機id怎麼更改 瀏覽:179
米家掃地機器人下載什麼app 瀏覽:82

友情鏈接