我有以下代码:
foreach (string p in dirs) { string path = p; string lastAccesstime = File.GetLastAccesstime(path).ToString(); bool DirFile = File.Exists(path); FileInfo fInf = new FileInfo(path); DateTime lastWriteTime = File.GetLastWriteTime(p); dirFiles.Add(p + "|" + lastAccesstime.ToString() + "|" + DirFile.ToString() + "|" + lastWriteTime.ToString() + "|" + fInf.Length.ToString()); }
我有一个fInf.Length.ToString(),我想用kbs来衡量输出.有关如何实现这一目标的任何想法?例如,我不想将2048作为文件大小,而是想得到2Kb.
在此先感谢您的帮助
解决方法
以下是如何将其分解为千兆字节,兆字节或千字节:
string sLen = fInf.Length.ToString(); if (fInf.Length >= (1 << 30)) sLen = string.Format("{0}Gb",fInf.Length >> 30); else if (fInf.Length >= (1 << 20)) sLen = string.Format("{0}Mb",fInf.Length >> 20); else if (fInf.Length >= (1 << 10)) sLen = string.Format("{0}Kb",fInf.Length >> 10);
sLen会得到你的回答.你可以将它包装在一个函数中,只需传入Length,甚至是FileInfo对象.
如果不是’真正的’千字节,你想要的是1000字节,你可以替换1<< 10和>> 10分别为1000和/ 1000,其他使用1000000和1000000000.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。