如图c#winform中右边有四个textbox,一个botton,希望通过单击botton导出textbox数据到excel中,求代码
发布网友
发布时间:2022-04-29 16:55
我来回答
共3个回答
热心网友
时间:2023-10-21 00:04
1.你需要在窗体里拖一个控件,SaveFileDialog
在botton的click事件里启动这个控件,用于获得保存xls的路径.
注意*文件后缀为.xls
objSaveFileDialog .InitialDirectory = "D:"; //默认保存路径
objSaveFileDialog .DefaultExt = "xls"; //默认后缀
objSaveFileDialog .Filter = "*.xls|*.xls"; //填充下拉菜单后缀选择项
2.写一个方法,用于格式化字符串,保存文件.
帖的代码源文件是我的项目里用来保存DataGridView 数据的,所以针对你的需求要做一些更改,我会做出说明.
StringWriter mySw;
string fullName; //文件名=全路径+文件名(包含后缀)
string line = ""; //行
//每一个line就是xls表格的一个行.
你需要在这里把你的内容进行拼接.
比如:line=textBox1.Text + "\t" +textBox2.Text ...
然后:mySw.WriteLine(line);
有多少行就写几次.
最后,保存入xls
mySw.Close();
FileStream filestream = new FileStream(fullName, FileMode.Create);
BinaryWriter objBw = new BinaryWriter(filestream, Encoding.GetEncoding("GB2312"));
objBw.Write(mySw.ToString());
objBw.Close();
filestream.Close();
因为不是excel自己创建的文件,所以excel会提示这个文件是其他程序创建的,不过没关系,再保存一下就好了.
你可以把保存文件的方法写一个类,在窗体中拼接StringWriter ,然后转给类方法保存.
这个类你也可以进行扩展,比如传入DataGridView,DataTable等将内容保存xls
热心网友
时间:2023-10-21 00:04
1.你需要在窗体里拖一个控件,SaveFileDialog
在botton的click事件里启动这个控件,用于获得保存xls的路径.
注意*文件后缀为.xls
objSaveFileDialog .InitialDirectory = "D:"; //默认保存路径
objSaveFileDialog .DefaultExt = "xls"; //默认后缀
objSaveFileDialog .Filter = "*.xls|*.xls"; //填充下拉菜单后缀选择项
2.写一个方法,用于格式化字符串,保存文件.
帖的代码源文件是我的项目里用来保存DataGridView 数据的,所以针对你的需求要做一些更改,我会做出说明.
StringWriter mySw;
string fullName; //文件名=全路径+文件名(包含后缀)
string line = ""; //行
//每一个line就是xls表格的一个行.
你需要在这里把你的内容进行拼接.
比如:line=textBox1.Text + "\t" +textBox2.Text ...
然后:mySw.WriteLine(line);
有多少行就写几次.
最后,保存入xls
mySw.Close();
FileStream filestream = new FileStream(fullName, FileMode.Create);
BinaryWriter objBw = new BinaryWriter(filestream, Encoding.GetEncoding("GB2312"));
objBw.Write(mySw.ToString());
objBw.Close();
filestream.Close();
因为不是excel自己创建的文件,所以excel会提示这个文件是其他程序创建的,不过没关系,再保存一下就好了.
你可以把保存文件的方法写一个类,在窗体中拼接StringWriter ,然后转给类方法保存.
这个类你也可以进行扩展,比如传入DataGridView,DataTable等将内容保存xls
热心网友
时间:2023-10-21 00:05
可能会亮起警示灯或铃声好让主人公知道,然后马上服务客人或病人。
如果是push the panic button,就是指惊慌失措。用法如:Stay calm; there's no need to hit the panic button. 冷静,无需恐慌。
"push the button"也可以指开始行动的意思,如:
We are waiting for him to push the button so that we can start the rescue operation. 我们正期待着他发好司令,好让我们马上采取救援行动。
热心网友
时间:2023-10-21 00:05
其实也可以保存到txt文件中,或者保存到数据库中也可以的,小软件用sqlite数据库也是很好的.
第一步,添加引用 Microsoft.Office.Interop.Excel
第二步,using Microsoft.Office.Interop.Excel;
接下来就根据情况休改下面得代码.
string outputPath = "你要保存的名字.xls";
// Create the Excel Application object
Microsoft.Office.Interop.Excel.Application excelApp = new Microsoft.Office.Interop.Excel.Application();
excelApp.Visible = true;
// Create a new Excel Workbook
Workbook excelWorkbook = excelApp.Workbooks.Add(Type.Missing);
int sheetIndex = 0;
// Copy each DataTable as a new Sheet
// Create a new Sheet
Worksheet excelSheet = (Worksheet) excelWorkbook.Sheets.Add(
excelWorkbook.Sheets.get_Item(++sheetIndex),
Type.Missing, 1, XlSheetType.xlWorksheet);
excelSheet.Name = "导出的数据";
// Copy the column names (cell-by-cell)
excelSheet.Cells[1, 1] =textBox1 .Text ;
excelSheet.Cells[1, 2] =textBox1 .Text ;
excelSheet.Cells[1, 3] =textBox1 .Text ;
excelSheet.Cells[1, 4] =textBox1 .Text ;
((Range) excelSheet.Rows[1, Type.Missing]).Font.Bold = true;
// Save and Close the Workbook
excelWorkbook.SaveAs(outputPath, XlFileFormat.xlWorkbookNormal, Type.Missing,
Type.Missing, Type.Missing, Type.Missing, XlSaveAsAccessMode.xlExclusive,
Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing);
excelWorkbook.Close(true, Type.Missing, Type.Missing);
excelWorkbook = null;
// Release the Application object
excelApp.Quit();
excelApp = null;
// Collect the unreferenced objects
GC.Collect();
GC.WaitForPendingFinalizers();
参考资料:http://www.codeproject.com/script/Articles/ViewDownloads.aspx?aid=21519
热心网友
时间:2023-10-21 00:05
可能会亮起警示灯或铃声好让主人公知道,然后马上服务客人或病人。
如果是push the panic button,就是指惊慌失措。用法如:Stay calm; there's no need to hit the panic button. 冷静,无需恐慌。
"push the button"也可以指开始行动的意思,如:
We are waiting for him to push the button so that we can start the rescue operation. 我们正期待着他发好司令,好让我们马上采取救援行动。
热心网友
时间:2023-10-21 00:04
1.你需要在窗体里拖一个控件,SaveFileDialog
在botton的click事件里启动这个控件,用于获得保存xls的路径.
注意*文件后缀为.xls
objSaveFileDialog .InitialDirectory = "D:"; //默认保存路径
objSaveFileDialog .DefaultExt = "xls"; //默认后缀
objSaveFileDialog .Filter = "*.xls|*.xls"; //填充下拉菜单后缀选择项
2.写一个方法,用于格式化字符串,保存文件.
帖的代码源文件是我的项目里用来保存DataGridView 数据的,所以针对你的需求要做一些更改,我会做出说明.
StringWriter mySw;
string fullName; //文件名=全路径+文件名(包含后缀)
string line = ""; //行
//每一个line就是xls表格的一个行.
你需要在这里把你的内容进行拼接.
比如:line=textBox1.Text + "\t" +textBox2.Text ...
然后:mySw.WriteLine(line);
有多少行就写几次.
最后,保存入xls
mySw.Close();
FileStream filestream = new FileStream(fullName, FileMode.Create);
BinaryWriter objBw = new BinaryWriter(filestream, Encoding.GetEncoding("GB2312"));
objBw.Write(mySw.ToString());
objBw.Close();
filestream.Close();
因为不是excel自己创建的文件,所以excel会提示这个文件是其他程序创建的,不过没关系,再保存一下就好了.
你可以把保存文件的方法写一个类,在窗体中拼接StringWriter ,然后转给类方法保存.
这个类你也可以进行扩展,比如传入DataGridView,DataTable等将内容保存xls
热心网友
时间:2023-10-21 00:05
可能会亮起警示灯或铃声好让主人公知道,然后马上服务客人或病人。
如果是push the panic button,就是指惊慌失措。用法如:Stay calm; there's no need to hit the panic button. 冷静,无需恐慌。
"push the button"也可以指开始行动的意思,如:
We are waiting for him to push the button so that we can start the rescue operation. 我们正期待着他发好司令,好让我们马上采取救援行动。
热心网友
时间:2023-10-21 00:05
其实也可以保存到txt文件中,或者保存到数据库中也可以的,小软件用sqlite数据库也是很好的.
第一步,添加引用 Microsoft.Office.Interop.Excel
第二步,using Microsoft.Office.Interop.Excel;
接下来就根据情况休改下面得代码.
string outputPath = "你要保存的名字.xls";
// Create the Excel Application object
Microsoft.Office.Interop.Excel.Application excelApp = new Microsoft.Office.Interop.Excel.Application();
excelApp.Visible = true;
// Create a new Excel Workbook
Workbook excelWorkbook = excelApp.Workbooks.Add(Type.Missing);
int sheetIndex = 0;
// Copy each DataTable as a new Sheet
// Create a new Sheet
Worksheet excelSheet = (Worksheet) excelWorkbook.Sheets.Add(
excelWorkbook.Sheets.get_Item(++sheetIndex),
Type.Missing, 1, XlSheetType.xlWorksheet);
excelSheet.Name = "导出的数据";
// Copy the column names (cell-by-cell)
excelSheet.Cells[1, 1] =textBox1 .Text ;
excelSheet.Cells[1, 2] =textBox1 .Text ;
excelSheet.Cells[1, 3] =textBox1 .Text ;
excelSheet.Cells[1, 4] =textBox1 .Text ;
((Range) excelSheet.Rows[1, Type.Missing]).Font.Bold = true;
// Save and Close the Workbook
excelWorkbook.SaveAs(outputPath, XlFileFormat.xlWorkbookNormal, Type.Missing,
Type.Missing, Type.Missing, Type.Missing, XlSaveAsAccessMode.xlExclusive,
Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing);
excelWorkbook.Close(true, Type.Missing, Type.Missing);
excelWorkbook = null;
// Release the Application object
excelApp.Quit();
excelApp = null;
// Collect the unreferenced objects
GC.Collect();
GC.WaitForPendingFinalizers();
参考资料:http://www.codeproject.com/script/Articles/ViewDownloads.aspx?aid=21519
热心网友
时间:2023-10-21 00:04
1.你需要在窗体里拖一个控件,SaveFileDialog
在botton的click事件里启动这个控件,用于获得保存xls的路径.
注意*文件后缀为.xls
objSaveFileDialog .InitialDirectory = "D:"; //默认保存路径
objSaveFileDialog .DefaultExt = "xls"; //默认后缀
objSaveFileDialog .Filter = "*.xls|*.xls"; //填充下拉菜单后缀选择项
2.写一个方法,用于格式化字符串,保存文件.
帖的代码源文件是我的项目里用来保存DataGridView 数据的,所以针对你的需求要做一些更改,我会做出说明.
StringWriter mySw;
string fullName; //文件名=全路径+文件名(包含后缀)
string line = ""; //行
//每一个line就是xls表格的一个行.
你需要在这里把你的内容进行拼接.
比如:line=textBox1.Text + "\t" +textBox2.Text ...
然后:mySw.WriteLine(line);
有多少行就写几次.
最后,保存入xls
mySw.Close();
FileStream filestream = new FileStream(fullName, FileMode.Create);
BinaryWriter objBw = new BinaryWriter(filestream, Encoding.GetEncoding("GB2312"));
objBw.Write(mySw.ToString());
objBw.Close();
filestream.Close();
因为不是excel自己创建的文件,所以excel会提示这个文件是其他程序创建的,不过没关系,再保存一下就好了.
你可以把保存文件的方法写一个类,在窗体中拼接StringWriter ,然后转给类方法保存.
这个类你也可以进行扩展,比如传入DataGridView,DataTable等将内容保存xls
热心网友
时间:2023-10-21 00:05
可能会亮起警示灯或铃声好让主人公知道,然后马上服务客人或病人。
如果是push the panic button,就是指惊慌失措。用法如:Stay calm; there's no need to hit the panic button. 冷静,无需恐慌。
"push the button"也可以指开始行动的意思,如:
We are waiting for him to push the button so that we can start the rescue operation. 我们正期待着他发好司令,好让我们马上采取救援行动。
热心网友
时间:2023-10-21 00:05
其实也可以保存到txt文件中,或者保存到数据库中也可以的,小软件用sqlite数据库也是很好的.
第一步,添加引用 Microsoft.Office.Interop.Excel
第二步,using Microsoft.Office.Interop.Excel;
接下来就根据情况休改下面得代码.
string outputPath = "你要保存的名字.xls";
// Create the Excel Application object
Microsoft.Office.Interop.Excel.Application excelApp = new Microsoft.Office.Interop.Excel.Application();
excelApp.Visible = true;
// Create a new Excel Workbook
Workbook excelWorkbook = excelApp.Workbooks.Add(Type.Missing);
int sheetIndex = 0;
// Copy each DataTable as a new Sheet
// Create a new Sheet
Worksheet excelSheet = (Worksheet) excelWorkbook.Sheets.Add(
excelWorkbook.Sheets.get_Item(++sheetIndex),
Type.Missing, 1, XlSheetType.xlWorksheet);
excelSheet.Name = "导出的数据";
// Copy the column names (cell-by-cell)
excelSheet.Cells[1, 1] =textBox1 .Text ;
excelSheet.Cells[1, 2] =textBox1 .Text ;
excelSheet.Cells[1, 3] =textBox1 .Text ;
excelSheet.Cells[1, 4] =textBox1 .Text ;
((Range) excelSheet.Rows[1, Type.Missing]).Font.Bold = true;
// Save and Close the Workbook
excelWorkbook.SaveAs(outputPath, XlFileFormat.xlWorkbookNormal, Type.Missing,
Type.Missing, Type.Missing, Type.Missing, XlSaveAsAccessMode.xlExclusive,
Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing);
excelWorkbook.Close(true, Type.Missing, Type.Missing);
excelWorkbook = null;
// Release the Application object
excelApp.Quit();
excelApp = null;
// Collect the unreferenced objects
GC.Collect();
GC.WaitForPendingFinalizers();
参考资料:http://www.codeproject.com/script/Articles/ViewDownloads.aspx?aid=21519
热心网友
时间:2023-10-21 00:05
其实也可以保存到txt文件中,或者保存到数据库中也可以的,小软件用sqlite数据库也是很好的.
第一步,添加引用 Microsoft.Office.Interop.Excel
第二步,using Microsoft.Office.Interop.Excel;
接下来就根据情况休改下面得代码.
string outputPath = "你要保存的名字.xls";
// Create the Excel Application object
Microsoft.Office.Interop.Excel.Application excelApp = new Microsoft.Office.Interop.Excel.Application();
excelApp.Visible = true;
// Create a new Excel Workbook
Workbook excelWorkbook = excelApp.Workbooks.Add(Type.Missing);
int sheetIndex = 0;
// Copy each DataTable as a new Sheet
// Create a new Sheet
Worksheet excelSheet = (Worksheet) excelWorkbook.Sheets.Add(
excelWorkbook.Sheets.get_Item(++sheetIndex),
Type.Missing, 1, XlSheetType.xlWorksheet);
excelSheet.Name = "导出的数据";
// Copy the column names (cell-by-cell)
excelSheet.Cells[1, 1] =textBox1 .Text ;
excelSheet.Cells[1, 2] =textBox1 .Text ;
excelSheet.Cells[1, 3] =textBox1 .Text ;
excelSheet.Cells[1, 4] =textBox1 .Text ;
((Range) excelSheet.Rows[1, Type.Missing]).Font.Bold = true;
// Save and Close the Workbook
excelWorkbook.SaveAs(outputPath, XlFileFormat.xlWorkbookNormal, Type.Missing,
Type.Missing, Type.Missing, Type.Missing, XlSaveAsAccessMode.xlExclusive,
Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing);
excelWorkbook.Close(true, Type.Missing, Type.Missing);
excelWorkbook = null;
// Release the Application object
excelApp.Quit();
excelApp = null;
// Collect the unreferenced objects
GC.Collect();
GC.WaitForPendingFinalizers();
参考资料:http://www.codeproject.com/script/Articles/ViewDownloads.aspx?aid=21519