我正在編寫一個用於Huffman編碼的程序。我需要提供10個文件,每個文件包含至少1次包含全部256個ASCII字符的500-1000個字符。我該怎麼做?互聯網上是否有包含全部256個ASCII字符的示例文件?請幫忙!如何創建包含全部256個ASCII字符的示例文本文件
更新: 我可以輸入255個ascii字符。但我似乎無法輸入NULL由於某種原因。它只是不顯示在文件中。所有其他字符都顯示爲例如刪除由五角形表示。我嘗試了Alt + 0。
我正在編寫一個用於Huffman編碼的程序。我需要提供10個文件,每個文件包含至少1次包含全部256個ASCII字符的500-1000個字符。我該怎麼做?互聯網上是否有包含全部256個ASCII字符的示例文件?請幫忙!如何創建包含全部256個ASCII字符的示例文本文件
更新: 我可以輸入255個ascii字符。但我似乎無法輸入NULL由於某種原因。它只是不顯示在文件中。所有其他字符都顯示爲例如刪除由五角形表示。我嘗試了Alt + 0。
您可以生成這些文件,你自己 - 一個相對簡單的算法應該足夠了:
c
對於每個編號c
,在範圍內產生一個隨機數n
從1到4,包含n
的值加到c
的列表中c
設置回0
,並繼續使用相同的算法,直到您超過500個計數。謝謝!我會試試看。 –
我不是一個java程序員(我不知道一點java),我是一個c程序員。但是,你想要做的事很簡單。我找到了一個你應該檢查的例子。
http://www.java2s.com/Code/Java/File-Input-Output/Writesomedatainbinary.htm
您需要修改代碼,以便你寫的不是整數字節。你應該循環做。如果需要隨機,請按照建議的dasblinkenlight進行操作。我寫下面的代碼片段替換了我給你的鏈接。
import java.io.DataOutputStream;
import java.io.FileOutputStream;
import java.io.IOException;
public class WriteBinary {
public static void main(String[] argv) throws IOException {
String FILENAME = "binary.dat";
DataOutputStream os = new DataOutputStream(new FileOutputStream(
FILENAME));
for(byte i = 0; i < 256; i++) os.writeByte(i);
os.close();
}
}
您還應該注意,並非所有的ascii值都是可打印的字符。因此,當您查看這些文件時,您將無法計數256個字符。但是,你應該能夠看到整個字母表和0 - 9.
謝謝!我會試試看。 –
由於某種原因,我似乎無法輸入NULL。它只是不顯示在文件中。所有其他字符都顯示爲例如刪除由五角形表示。 –
那裏可能沒有null的可打印字符。檢查你的文件大小,如果它是256那麼NULL肯定在那裏。 – tay10r
你應該能夠在一個簡單的循環中做到這一點,你不需要從互聯網上的文件。 – tay10r
@TaylorFlores:我無法打印一些像NULL和刪除的字符..如何操作 –
您需要打開並以二進制模式寫入文件。你可以寫空和刪除。給我一點時間找到寫鏈接發送給你 – tay10r