C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

FTPでダウンロードしたら文字化け


(過去ログ 4 を表示中)

[トピック内 6 記事 (1 - 6 表示)]  << 0 >>

■4693 / inTopicNo.1)  FTPでダウンロードしたら文字化け
  
□投稿者/ さすけ 二等兵(1回)-(2006/07/03(Mon) 21:57:06)

分類:[C#] 


分類:[C#] 

FTPサーバーにUTF-16(改行LF)のファイルがあり、これを下記のコードを
使用してダウンロードすると文字化けしてしまいます。

文字コードの変換がうまくいっていないのはわかるのですが、どのように
コーディングしていいか詰まってしまっています。

よろしければコーディング方法をご教授いただけないでしょうか。

ここを見ろという参考サイトでもかまいませんのでよろしくお願いいたします。

<ソース>
string url = "ftp://********/aaa.xml"

FtpWebRequest ftpRequest = (FtpWebRequest)(WebRequest.Create(url));
ftpRequest.Credentials = new NetworkCredential("user", "password");
ftpRequest.UseBinary = false;
ftpRequest.Method = WebRequestMethods.Ftp.DownloadFile;

using (FtpWebResponse res = (FtpWebResponse)(ftpRequest.GetResponse()))
using (Stream rstream = res.GetResponseStream())
using (FileStream fstream = new FileStream(@"c:\aaa.xml", FileMode.Create))
{
int count = 0;
byte[] buffer = new byte[1024];

while ((count = rstream.Read(buffer, 0, buffer.Length)) != 0)
{
fstream.Write(buffer, 0, count);
}
}


0
引用返信 編集キー/
■4693 / inTopicNo.2)  FTPでダウンロードしたら文字化け
□投稿者/ さすけ 二等兵(1回)-(2006/07/03(Mon) 21:57:06)

分類:[C#] 


分類:[C#] 

FTPサーバーにUTF-16(改行LF)のファイルがあり、これを下記のコードを
使用してダウンロードすると文字化けしてしまいます。

文字コードの変換がうまくいっていないのはわかるのですが、どのように
コーディングしていいか詰まってしまっています。

よろしければコーディング方法をご教授いただけないでしょうか。

ここを見ろという参考サイトでもかまいませんのでよろしくお願いいたします。

<ソース>
string url = "ftp://********/aaa.xml"

FtpWebRequest ftpRequest = (FtpWebRequest)(WebRequest.Create(url));
ftpRequest.Credentials = new NetworkCredential("user", "password");
ftpRequest.UseBinary = false;
ftpRequest.Method = WebRequestMethods.Ftp.DownloadFile;

using (FtpWebResponse res = (FtpWebResponse)(ftpRequest.GetResponse()))
using (Stream rstream = res.GetResponseStream())
using (FileStream fstream = new FileStream(@"c:\aaa.xml", FileMode.Create))
{
int count = 0;
byte[] buffer = new byte[1024];

while ((count = rstream.Read(buffer, 0, buffer.Length)) != 0)
{
fstream.Write(buffer, 0, count);
}
}


0
引用返信 編集キー/
■4695 / inTopicNo.3)  Re[1]: FTPでダウンロードしたら文字化け
□投稿者/ 中博俊 神(572回)-(2006/07/03(Mon) 22:30:22)
中博俊 さんの Web サイト

分類:[C#] 

FTPサーバーにUTF-16(改行LF)のファイルがあり、これを下記のコードを

サーバは理解しました。
クライアントには何のコードで取得したいのですか?

というか

ftpRequest.UseBinary = false;

バイナリで落としてこないと何でもかんでも変換するわけじゃないでしょう。
多分CRLFの変換だけじゃないのかな。



0
引用返信 編集キー/
■4695 / inTopicNo.4)  Re[1]: FTPでダウンロードしたら文字化け
□投稿者/ 中博俊 神(572回)-(2006/07/03(Mon) 22:30:22)
中博俊 さんの Web サイト

分類:[C#] 

FTPサーバーにUTF-16(改行LF)のファイルがあり、これを下記のコードを

サーバは理解しました。
クライアントには何のコードで取得したいのですか?

というか

ftpRequest.UseBinary = false;

バイナリで落としてこないと何でもかんでも変換するわけじゃないでしょう。
多分CRLFの変換だけじゃないのかな。



0
引用返信 編集キー/
■4704 / inTopicNo.5)  Re[2]: FTPでダウンロードしたら文字化け
□投稿者/ さすけ 二等兵(2回)-(2006/07/04(Tue) 09:19:25)

分類:[C#] 

さすけです。

中博俊様、返信いただきありがとうございます。

> サーバは理解しました。
> クライアントには何のコードで取得したいのですか?
>
> というか
>
> ftpRequest.UseBinary = false;
>
> バイナリで落としてこないと何でもかんでも変換するわけじゃないでしょう。
> 多分CRLFの変換だけじゃないのかな。

ご指摘の通り、UseBinary = true;としてバイナリモードで正しくダウンロード
できました。(クライアント、UTF-16、改行LFで)
何でもAsciiで落とそうとしていたのがそもそも間違いでした。

ご指摘ありがとうございました。
また、お騒がせいたして申し訳ありませんでした。


解決済み
引用返信 編集キー/
■4704 / inTopicNo.6)  Re[2]: FTPでダウンロードしたら文字化け
□投稿者/ さすけ 二等兵(2回)-(2006/07/04(Tue) 09:19:25)

分類:[C#] 

さすけです。

中博俊様、返信いただきありがとうございます。

> サーバは理解しました。
> クライアントには何のコードで取得したいのですか?
>
> というか
>
> ftpRequest.UseBinary = false;
>
> バイナリで落としてこないと何でもかんでも変換するわけじゃないでしょう。
> 多分CRLFの変換だけじゃないのかな。

ご指摘の通り、UseBinary = true;としてバイナリモードで正しくダウンロード
できました。(クライアント、UTF-16、改行LFで)
何でもAsciiで落とそうとしていたのがそもそも間違いでした。

ご指摘ありがとうございました。
また、お騒がせいたして申し訳ありませんでした。


解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -