이 문서의 예에서는 C#.net 프로그래밍을 사용하여 Access 파일과 Excel 파일을 만드는 방법을 설명합니다. 참조용으로 모든 사람과 공유하세요. 세부 사항은 다음과 같습니다.
일부 시스템에서는 데이터 전송, 인쇄 등을 용이하게 하기 위해 데이터를 Access 또는 Excel 파일 형식으로 내보내야 할 수도 있습니다.
내보내야 하는 두 파일(Excel 파일 또는 Access)이 미리 존재하지 않을 수 있습니다. 이를 위해서는 직접 프로그래밍하고 생성해야 합니다. 다음은 이 두 파일을 생성하는 몇 가지 방법입니다. 일반적으로 사용되는 것들이 나열되어 있습니다. 전부는 아닙니다.
1. 먼저 엑셀 파일을 생성합니다.
옵션 1. 엑셀을 이용해 2차원 데이터만 저장하는 경우 데이터베이스로 활용한다.
가장 간단한 것은 추가 구성 요소를 참조할 필요 없이 OLEDB만 사용하여 Excel 파일을 생성하면 된다는 것입니다. 샘플 코드는 다음과 같습니다.
using System.Data.OleDb; public static void CreateExcelFile2() { string OLEDBConnStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c://aa2.xls;"; OLEDBConnStr += " Extended Properties=Excel 8.0;"; string strCreateTableSQL = @" CREATE TABLE "; strCreateTableSQL += @" 测试表 "; strCreateTableSQL += @" ( "; strCreateTableSQL += @" ID INTEGER, "; strCreateTableSQL += @" UserID INTEGER, "; strCreateTableSQL += @" UserIP VARCHAR , "; strCreateTableSQL += @" PostTime DATETIME , "; strCreateTableSQL += @" FromParm VARCHAR "; strCreateTableSQL += @" ) "; OleDbConnection oConn = new OleDbConnection(); oConn.ConnectionString = OLEDBConnStr; OleDbCommand oCreateComm = new OleDbCommand(); oCreateComm.Connection = oConn; oCreateComm.CommandText = strCreateTableSQL; oConn.Open(); oCreateComm.ExecuteNonQuery(); oConn.Close(); } using System.Data.OleDb; public static void CreateExcelFile2() { string OLEDBConnStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c://aa2.xls;"; OLEDBConnStr += " Extended Properties=Excel 8.0;"; string strCreateTableSQL = @" CREATE TABLE "; strCreateTableSQL += @" 测试表 "; strCreateTableSQL += @" ( "; strCreateTableSQL += @" ID INTEGER, "; strCreateTableSQL += @" UserID INTEGER, "; strCreateTableSQL += @" UserIP VARCHAR , "; strCreateTableSQL += @" PostTime DATETIME , "; strCreateTableSQL += @" FromParm VARCHAR "; strCreateTableSQL += @" ) "; OleDbConnection oConn = new OleDbConnection(); oConn.ConnectionString = OLEDBConnStr; OleDbCommand oCreateComm = new OleDbCommand(); oCreateComm.Connection = oConn; oCreateComm.CommandText = strCreateTableSQL; oConn.Open(); oCreateComm.ExecuteNonQuery(); oConn.Close(); }
테이블을 생성할 때 시스템에서 Excel 파일이 존재하지 않는 것으로 확인되면 자동으로 Excel 파일이 생성됩니다. 접해보지 않은 분들은 이 사실을 모를 수도 있겠네요.
추가 및 수정 작업은 일반 데이터베이스와 다르지 않으므로 설명하지 않습니다.
옵션 2: 공백을 사용하여 각 데이터 항목을 구분하는 일반 텍스트 파일을 직접 생성하지만 파일의 접미사는 XLS입니다.
참고: 이때 Excel을 직접 사용하여 해당 파일을 열면 문제 없습니다. 모든 것이 정상이지만 ADO.net을 사용하여 이 파일을 읽는 경우 링크 엔진은 Excel이 아니어야 합니다. 그러나 텍스트 파일(Microsoft Text Driver)입니다. 즉, 링크 문자열은
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c://aa2.xls;Extended Properties=Excel 8.0;"
가 아니라 다음과 같아야 합니다.
OLEDB에서 문자열을 연결하는 방식:
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C://11.txt;Extended Properties='text;HDR=No;FMT=TabDelimited'
ODBC에서 TXT를 읽는 방식 문자열 쓰기 :
Driver={Microsoft Text Driver (*.txt; *.csv)}; Dbq=C://11.txt; Extensions=asc,csv,tab,txt;
옵션 3. 생성하려는 Excel 파일에는 생성해야 하는 몇 가지 Excel 고유 기능이 있으며, 이를 위해서는 Com을 사용해야 합니다. 즉: Microsoft Excel Object Library
Microsoft를 추가하세요. Excel 11.0 개체 라이브러리는 설치한 Office 버전에 따라 이 구성 요소 라이브러리의 버전이 다릅니다.
샘플 코드:
public static void CreateExcelFile() { string FileName = "c://aa.xls"; Missing miss = Missing.Value; Excel.Application m_objExcel = new Excel.Application(); m_objExcel.Visible = false; Excel.Workbooks m_objBooks = (Excel.Workbooks)m_objExcel.Workbooks; Excel.Workbook m_objBook = (Excel.Workbook)(m_objBooks.Add(miss)); m_objBook.SaveAs(FileName, miss, miss, miss, miss, miss, Excel.XlSaveAsAccessMode.xlNoChange, miss, miss,miss, miss, miss); m_objBook.Close(false, miss, miss); m_objExcel.Quit(); }
더 이상의 엑셀 작업 없이 여기서는 간단하게 엑셀 파일을 만들었습니다. 더 알고 싶으시다면 이 사이트의 관련 글을 참고하시면 됩니다.
2. Access 데이터베이스 생성
Access는 결국 데이터베이스이므로 Excel에서 위에서 언급한 첫 번째 방법을 적용할 수 없습니다.
ADOX를 사용하여 Access 데이터베이스 파일을 만들 수 있습니다.
ADOX와 OleDB의 차이점: ADOX는 단지 인터페이스인 데이터 API이고 API는 데이터 공급자를 호출합니다.
샘플 코드:
사용하기 전에 DDL 및 보안용 Microsoft ADO Ext. 2.x에 대한 참조를 추가하세요. 운영 체제에 따라 여기에 있는 버전이 다를 수 있습니다.
using ADOX; using System.IO; public static void CreateAccessFile(string FileName) { if(!File.Exists(FileName)) { ADOX.CatalogClass cat = new ADOX.CatalogClass(); cat.Create("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + FileName +";"); cat = null; } }
위 코드는 Access 데이터베이스만 생성하며, ADOX를 사용하면 데이터베이스 운영, 테이블 추가 등도 가능합니다.
rree이 기사가 C# 프로그래밍에 종사하는 모든 사람에게 도움이 되기를 바랍니다.
C#.net 프로그래밍을 사용하여 Access 파일과 Excel 파일을 만드는 방법에 대한 자세한 설명은 PHP 중국어 웹사이트의 관련 기사를 참고하세요!