Hashtable ht = new Hashtable( 1000 );
string line;
using (StreamReader sr = new StreamReader(inFilePath, Encoding.Default))
{
while (sr.Peek() >= 0)
{
line = sr.ReadLine();
ht.Add(line,null);
}
}
StreamWriter sw = new StreamWriter(outpath, false, Encoding.Default);
.....
问题是初始化hashtable的大小后,所有的内容还是都加进了ht中 菜鸟请教。。。
------解决方案--------------------
用 List 就可以了。
HashTable的初始大小和限制容量没有一点关系,你属于用错误的方法解决错误的问题。
List<string> list = new List<string>(); using (StreamReader sr = new StreamReader(inFilePath, Encoding.Default)) { while (sr.Peek() >= 0) { line = sr.ReadLine(); list.Add(line); if (list.Count() > 1000) { StreamWriter sw = new StreamWriter(outpath, false, Encoding.Default); ... } } }