Nachdem ASP Daten in Excel importiert hat, erscheinen chinesische Schriftzeichen verstümmelt? ? wie man es löst
Autor:Eve Cole
Aktualisierungszeit:2009-06-25 17:44:35
Frage: Erscheinen die chinesischen Daten verstümmelt, nachdem ASP Daten in Excel importiert hat? ? wie man es löst
<!--#include file="function/connect.asp" -->
<!--#include file="function/function.asp" -->
<%
Response.Charset = "UTF-8"
„Die zuvor enthaltene Datei ist und um eine Verknüpfung zur Datenbank herzustellen, müssen Sie diese Datei ändern, um eine Verknüpfung zu einer anderen Bibliothek herzustellen.“
sql1="select * from apply " 'Hier ist die Abfrageanweisung zur Ausgabe von EXCEL, z. B. "SESECT * FORM CAI WHERE gender='female'"
filename="excel4.xls" 'Der Dateiname der auszugebenden EXCEL-Datei. Sie müssen nur die beiden obigen Sätze ändern, sonst nichts ändern.
Rufen Sie toexcel(FILENAME,sql1) auf
setze conn=nichts
function ReadText(FileName) 'Dies ist eine Funktion zum Lesen von Dateien
'response.write server.MapPath(FileName)
'response.end
set adf=server.CreateObject("Adodb.Stream")
mit adf
.Typ=2
.LineSeparator=10
.Offen
.LoadFromFile (server.MapPath(FileName))
.Charset="GB2312"
.Position=2
ReadText=.ReadText
.Stornieren()
.Schließen()
Schluss mit
setze „ads=nothing“.
Endfunktion
sub SaveText(FileName,Data) 'Dies ist eine Funktion zum Schreiben von Dateien
set fs= createobject("scripting.filesystemobject")
set ts=fs.createtextfile(server.MapPath(FileName),true)
ts.writeline(data)
ts.close
setts=nichts
setze fs=nichts
Ende sub
sub toexcel(filename,sql) 'Dies ist eine EXCEL-Datei, die basierend auf SQL-Anweisungen und FILENAME generiert wurde
Setze rs=Server.CreateObject("ADODB.RecordSet")
'Response.Write sql
'response.end
rs.Open sql,objconn,1,1
TOEXCELLR="<table width='100%'><tr >"
setze myfield=rs.fields
dim Feldname(50)
für i=0 bis myfield.count-1
toexcellr=toexcellr&"<td class=xl24>"&MYFIELD(I).NAME&"</td>"
Feldname(i)=meinFeld(i).name
if myfield(i).type=135 then datename=datenname&myfield(i).name&","
nächste
toexcellr=toexcellr&"</tr>"
tun, während nicht rs.eof
toexcellr=toexcellr&"<tr>"
für i=0 bis myfield.count-1
if instr(datenname,fieldname(i)&",")<>0 dann
wenn nicht isnull(rs(fieldname(i))) dann
TOEXCELLR=TOEXCELLR&"<td class=xl25 ><p align='left'>"&formatdatetime(rs(fieldname(i)),2)&"</p></td>"
anders
TOEXCELLR=TOEXCELLR&"<td class=xl25 ><p align='left'> </p></td>"
Ende wenn
anders
TOEXCELLR=TOEXCELLR&"<td class=xl24 >"&rs(fieldname(i))&"</td>"
Ende wenn
nächste
toexcellr=toexcellr&"</tr>"
rs.movenext
Schleife
rs.close
toexcellr=toexcellr&"</table>"
tou=readtext("tou.txt")
di=readtext("di.txt")
toexcellr=tou&toexcellr&di
Aufruf von savetext(filename,toexcellr)
Ende sub
%>
<html>
<Kopf>
<meta http-equiv="refresh" content="3;URL=<%=filename%>">
<meta http-equiv="Content-Language" content="en-us">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Excel-Datei generieren</title>
</head>
<KÖRPER>
Excel-Datei wird erstellt....
</BODY>
</HTML>
Antwort:
EXEC master..xp_cmdshell 'bcp "SELECT * FROM Bibliotheksname.dbo.apply, wobei Geschlecht=weiblich" queryout "excel4.xls" -c -q -S"Servername" -U"Benutzername" -P"Passwort"'
Ich habe diese Methode zum Exportieren nach Excel ohne verstümmelte Zeichen verwendet. Sie können es versuchen, SQL-Datenbank