ファイルサイズをファイルから 16 進コードに変換しようとしていますが、エラーが発生します。
私がこれまでに持っているコード:
public static string DecToHex(int decValue)
{
return string.Format("{0:x}", decValue);
}
private void button1_Click(object sender, EventArgs e)
{
DirectoryInfo dinfo = new DirectoryInfo(@"C:\Users\Admin\Desktop\10 23\files");
FileInfo[] Files = dinfo.GetFiles("*.xml");
foreach (FileInfo file in Files)
{
listBox1.Items.Add(file.Name);
}
}
private void button2_Click(object sender, EventArgs e)
{
DirectoryInfo dinfo = new DirectoryInfo(@"C:\Users\Admin\Desktop\10 23\files");
FileInfo[] Files = dinfo.GetFiles("*.xml");
foreach (FileInfo file in Files)
{
listBox2.Items.Add(DecToHex(file.Length));
}
}
エラーは「.. 'long' から 'int' に変換できません。ファイル サイズを hex として表示するより良い方法を知っている人がいるかもしれません。
私はこのコードをC ++で持っていました
if(m_bAlgorithm[HASHID_SIZE_32])
{
sizehash32_end(&m_uSizeHash32);
printf(SZ_SIZEHASH_32);
printf(SZ_HASHPRE);
printf("%08X", m_uSizeHash32);
printf(CPS_NEWLINE);
}