我想将大约1 gig的巨大.csv文件导入数据库.
我的应用程序在visual studio 2010中以c#编码.它在本地运行,不需要在网络上使用.
我尝试使用sql紧凑工具箱脚本仅导入25mb导致Visual Studio崩溃.
我尝试使用stringbuilder会导致内存不足异常(使用大约4 GB内存!)然后失败.
我尝试将这些文件导入Excel或Access,然后将它们转换为数据库也失败了.
哪些数据库可以更好地处理我的问题?
另外,我应该使用哪种方法尽可能快地导入它并将其加载到datagridview中?
谢谢你的帮助.
我想SelectedItems在ListView中获取值但它不起作用!
选择一个项目时我没有问题,但我想在扩展模式下工作,因此它显示任何选定的项目.
我的代码是:
List<Fnamelist> familylist = new List<Fnamelist>();
public class Fnamelist
{
public Fnamelist(string fname)
{
this.Fname = fname;
}
private string fname = string.Empty;
public string Fname
{
get { return fname; }
set { fname = value; }
}
}
private void button1_Click(object sender, RoutedEventArgs e)
{
MessageBox.Show(((Fnamelist)listView1.SelectedItems).Fname.ToString());
}
private void Window_Loaded(object sender, RoutedEventArgs e)
{
familylist.Add(new Fnamelist("mike"));
familylist.Add(new Fnamelist("john"));
familylist.Add(new Fnamelist("melon"));
familylist.Add(new Fnamelist("bab"));
listView1.ItemsSource = familylist;
listView1.Items.Refresh();
}
Run Code Online (Sandbox Code Playgroud)
xaml:
<Button Content="show" Height="23" HorizontalAlignment="Left" Margin="331,79,0,0" Name="button1" …Run Code Online (Sandbox Code Playgroud) 我的应用程序首先加载文本文件在richtextbox whitout任何问题:
StreamReader str = new StreamReader("C:\\test.txt");
while (str.Peek() != -1)
{
richtextbox1.AppendText(str.ReadToEnd());
}
Run Code Online (Sandbox Code Playgroud)
之后,我想使用itextsharp将richtextbox的文本导出为pdf格式:
iTextSharp.text.Document doc = new iTextSharp.text.Document();
iTextSharp.text.pdf.PdfWriter.GetInstance(doc, new FileStream(filename, FileMode.Create));
doc.Open();
doc.Add(new iTextSharp.text.Paragraph(richtextbox1.Text));
doc.Close();
Run Code Online (Sandbox Code Playgroud)
我使用了背景工作者,但它没有帮助我:
private delegate void upme(string filenamed);
private void callpdf(string filename)
{
iTextSharp.text.Document doc = new iTextSharp.text.Document();
iTextSharp.text.pdf.PdfWriter.GetInstance(doc, new FileStream(filename, FileMode.Create));
doc.Open();
doc.Add(new iTextSharp.text.Paragraph(richtextbox1.Text));
doc.Close();
}
private void savepdfformat(string filenames)
{
BackgroundWorker bg = new BackgroundWorker();
bg.DoWork += delegate(object s, DoWorkEventArgs args)
{
upme movv = new upme(callpdf);
richtextbox1.Dispatcher.Invoke(movv, System.Windows.Threading.DispatcherPriority.Normal, filenames);
};
bg.RunWorkerCompleted …Run Code Online (Sandbox Code Playgroud)