יוצא datagrid לקובץ אקסל בעיה עם העברית ועוד כמה דברים #c - תכנות - HWzone פורומים
עבור לתוכן
  • צור חשבון

יוצא datagrid לקובץ אקסל בעיה עם העברית ועוד כמה דברים #c


Elad87

Recommended Posts

שלום לכולם, אני מפתח תוכנה מסוימת בעזרת VS2010 ו SQL Server בשפת c#.

אני צריך לייצא datagrid מסוים לקובץ אקסל חיפשתי קצת דברים בגוגל ובגדול הכל עובד כלומר כן נוצר קובץ אבל כל מה שכתוב בעברית מופיע כ ???, באנגלית אין בעיה. אני די בטוח שאין בעיה בקוד. למישהו יש מושג ? או אולי קוד אחר שעובד עם עברית ?

דבר שני לגבי התקנת מערכת:

אחרי שהמערכת שלי מוכנה כבר מהי הדרך הכי טובה להתקין את זה במחשב אחר ?

איך מוצאים את זה לקובץ התקנה?

זה כולל את כל ה DB ( בערך 25 טבלאות) או שאת זה לייצא בנפרד?

האם אני חייב להתקין SQL Server במחשב שהמערכת הולכת לרוץ?

תודה מראש!

קישור לתוכן
שתף באתרים אחרים


private void button4_Click(object sender, EventArgs e)
{
SaveFileDialog sfd = new SaveFileDialog();
sfd.Filter = "Excel Documents (*.xls)|*.xls";
sfd.FileName = ".xls";
if (sfd.ShowDialog() == DialogResult.OK)
{
//ToCsV(dataGridView1, @"c:\export.xls");
ToCsV(dataGridView2, sfd.FileName); // Here dataGridview2 is your grid view name
}
}
 


private void ToCsV(DataGridView dataGridview2, string filename)
{
string stOutput = "";
// Export titles:
string sHeaders = "";




for (int j = 0; j < dataGridview2.Columns.Count; j++)
sHeaders = sHeaders.ToString() + Convert.ToString(dataGridview2.Columns[j].HeaderText) + "\t";
stOutput += sHeaders + "\r\n";
// Export data.
for (int i = 0; i < dataGridview2.RowCount - 1; i++)
{
string stLine = "";
for (int j = 0; j < dataGridview2.Rows[i].Cells.Count; j++)
stLine = stLine.ToString() + Convert.ToString(dataGridview2.Rows[i].Cells[j].Value) + "\t";
stOutput += stLine + "\r\n";
}
\\[B][U][I][COLOR=#0000cd]כאן ביצעתי שינוי [/COLOR][/I][/U][/B] Encoding utf8x = Encoding.GetEncoding(1255);
byte[] output = utf8x.GetBytes(stOutput);
FileStream fs = new FileStream(filename, FileMode.Create);
BinaryWriter bw = new BinaryWriter(fs);
bw.Write(output, 0, output.Length); //write the encoded file
bw.Flush();
bw.Close();
fs.Close();
}

}

השתמשתי גם ב


using Excel = .Office.Interop.Excel;
using .Office.Core;

reference הוספתי את

לאחר מכן עשיתי שינוי בקוד Encoding השתמשתי ב UTFX8 ובמספר 1255

לגבי ההתקנה אני עדין צריך עזרה ודעה.

תודה!

קישור לתוכן
שתף באתרים אחרים

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

×
  • צור חדש...