はじめての自宅サーバ構築 - Fedora/CentOS -
Last Update 2018/01/16
[ 更新履歴 ] [ サイト マップ ] [ 質問掲示板 ] [ 雑談掲示板 ] [ リンク ]
トップ >> 当サイト情報 >> スレッド

このページは表示専用です。新規投稿・レスや最新情報はこちらです。

 漢字表示
日時: 2005/03/04 00:34
名前: hiro

こんばんわです。 さきほどユーザごとにWEBフォルダをというので質問させていただいたものなのですが、またまた問題が発生してしまいました;;
今まで、windowsでHP公開していたファイルをWinSCPを使ってLinuxに転送し、Webブラウザで見てみたのですが、画像が表示されませんでした。 なぜかと思ってよく見てみると
ファイル名に漢字を使ってました;; (写真.jpg)って感じで・・・
Linuxで漢字表示ができればWebで表示できるようになると思うのですが、Linuxで漢字表示させるようにできる方法はありますでしょうか?
どうぞよろしくお願いします ペコリ

■ コンテンツ関連情報

 Re: 漢字表示 ( No.1 )
日時: 2005/03/04 00:56
名前: hiro

いあ、Linux上で表示させても無駄かあ・・・
Kon2は使っています。でも、文字化けしている状態です。
WinSCPでの転送のときになにか設定するのでしょうか・・?
 Re: 漢字表示 ( No.2 )
日時: 2005/03/04 17:33
名前: hiro

convmvというのを使って漢字変換に成功したのですが、やっぱり画像が表示できませんでした;; しょうがないのでHPは作り直すとして、コンソール上に日本語を(漢字も)表示させる方法ってないでしょうか? よろしくお願いします ペコリ
 Re: 漢字表示 ( No.3 )
日時: 2005/03/04 18:00
名前: 管理者

hiro様、こんにちは。

konコマンドを入力後、表示してみてください。
短文で申し訳けありません。
 Re: 漢字表示 ( No.4 )
日時: 2005/03/04 18:27
名前: hiro

すみません、説明が足りませんでした。
Konは起動しています。 Javaプログラムでの日本語表示なのですが、
Javaプログラムを起動して例えばチャットプログラムでKonを起動したLinuxコンソールにチャットの内容が表示されるはずなのですが日本語だけ表示されません。
Javaプログラムでは日本語表示させられないのでしょうか?
よろしくお願いします ペコリ
 Re: 漢字表示 ( No.5 )
日時: 2005/03/04 20:45
名前: 管理者

webから与えられた漢字をコンソールに表示したのでしょうか?

それとも、試験的に漢字をオンコーディングした物が化けているのでしょうか?


前者ならば、シフトJISコード等を受け付けてそのまま表示されてしまっているのではないでしょうか?
この場合はコード変換すれば良いと思います
 Re: 漢字表示 ( No.6 )
日時: 2005/03/04 20:58
名前: hiro

ん〜と、説明が難しいのですが、Javaプログラムを実行するとその実行状況がコンソールにリアルタイムでどんどん表示されていくのですが、日本語が表示されないのです(文字化けではなく、まったく表示されない)、これは、Javaプログラムをどうにかしないといけないのかも?とも思うのですが、コンソールでシフトJISを表示できるようにしてやれば表示できるような気がするんですが・・どうなんでしょう?
コンソールでシフトJISを表示するようなことってできるんでしょうか?
説明下手ですみません;; 
 Re: 漢字表示 ( No.7 )
日時: 2005/03/05 01:14
名前: PINE

状況が良く分らないのですが、、、
以下のプログラムは正常に動きますか?
public class TestJava {
public static void main(String[] args) {
int buffer;
System.out.println("文字列を入力しEnterを押すとエコーバックします");
System.out.println("終了はCtrl+Dです");
try{
while((buffer = System.in.read()) != -1){
System.out.write(buffer);
}
}catch(java.io.IOException e){
e.printStackTrace();
}
}
}
 Re: 漢字表示 ( No.8 )
日時: 2005/03/05 01:26
名前: hiro

testjava.java:1: クラス TestJavaはpublicであり、ファイルTestJava.javaで宣言しなければなりません。
public class TestJava{

エラー1個

とでます^^;
 Re: 漢字表示 ( No.9 )
日時: 2005/03/05 01:34
名前: hiro

えっと
#javaプログラム | lv > test.log
で、日本語表示を書き込むことはできたんですが
#javaプログラム | lv
でコンソール上に表示できません;;
どうにかコンソール上に表示させる方法はないですかね?;;
 Re: 漢字表示 ( No.10 )
日時: 2005/03/05 01:44
名前: PINE

> testjava.java:1: クラス TestJavaはpublicであり、ファイルTestJava.javaで宣言しなければなりません。
> public class TestJava{


> エラー1個

> とでます^^;

Javaのソースファイル名はクラス名と同一でなければいけませんので(大文字、小文字を含めて、、、)
TestJava.javaと言うファイル名で作ってください。

これがうまくいった場合
チャットとかだと複数のプラットフォームが存在しますので、単純に文字コードだけの問題なら
InputStreamReader(InputStream in, Charset cs)
なんかを使うと解決するかも知れません、、、(実証してません(^_^;))
 Re: 漢字表示 ( No.11 )
日時: 2005/03/05 01:50
名前: hiro

おお! TestJavaうまくいきました〜!
で、InputStreamReader(InputStream in, Charset cs)を使うってどうするんですか?
教えてください ペコペコ
 Re: 漢字表示 ( No.12 )
日時: 2005/03/05 09:36
名前: 管理者

hiro様、こんにちは。

> InputStreamReader(InputStream in, Charset cs)を使うってどうするんですか?
Java関連の関数はgoogleなどで「java InputStreamReader 使用法」で検索された方が確実だと思います。

Linux/UNIXで開発する場合は、ホスト側のコード体系に気を付けて下さいね。
まず、自分のホストが何を使っているのか等・・
後々、これにはまってしまう事って結構ありますので・・・
 Re: 漢字表示 ( No.13 )
日時: 2005/03/05 13:48
名前: hiro

InputStreamReader(InputStream in, Charset cs)

これって、Javaの関数なんですね^^;
無知ですみません;;
Javaプログラムはjava.classのコンパイルされたもので自分では編集できないと思うのですが・・・
それとも自作のInputStreamReader(InputStream in, Charset cs)を使ったプログラムを
作って#javaプログラム | 自作のjavaプログラム
としろということでしょうか?
これだと上で示したようにlvやnkfと同じようになると思うのですが・・・
 Re: 漢字表示 ( No.14 )
日時: 2005/03/05 14:36
名前: PINE

説明が舌足らずですみませんでした。
自作のプログラムではないのですね、、、
#javaプログラム | nkf -e
とやってもダメなんですよね、、、(汗)

自サーバーとは関係の無い話になってしまい申し訳ありません>管理者様
 Re: 漢字表示 ( No.15 )
日時: 2005/03/05 14:58
名前: hiro

PINEさん、こちらの説明も不足ですみませんでした ペコペコ
nkf の全オプション試してみたんですがだめでした;;
#javaプログラム | nkf ではコンソールに表示されないので
#nkf | javaプログラム で全オプションを試してみたのですがだめでした;;
 Re: 漢字表示 ( No.16 )
日時: 2005/03/05 17:36
名前: 管理者

ちなみに・・・

Linuxコンソールでないと駄目でしょうか?
私も、構築当時にコンソールで漢字ではまってしまったので経験上ですが・・・
ターミナルであれば一発解決しそうな気が・・

物理上、もう一台なければ話は戻ってしまいますが。
 Re: 漢字表示 ( No.17 )
日時: 2005/03/05 17:42
名前: hiro

ターミナルというのは具体的にどうするのでしょうか?
 Re: 漢字表示 ( No.18 )
日時: 2005/03/05 19:32
名前: 管理者

ターミナルとは、Linuxサーバに接続するもう一台のPCよりTeraTermや
当サイトで紹介しているPuTTY「http://kajuhome.com/putty.shtml
で接続した別画面の事を指します。
 Re: 漢字表示 ( No.19 )
日時: 2005/03/05 20:42
名前: hiro

puTTYはインストールしてるのですが、それだと、puTTYでjavaプログラムを立ち上げろと
いうことでしょうか? その場合ウィンドウズがシャットダウンできませんよね?・・・・;;
それともpuTTYでログインして、コンソールtty1の状況を見る方法があるんでしょうか?
 Re: 漢字表示 ( No.20 )
日時: 2005/03/05 21:03
名前: 管理者

ちなみに、そのjavaプログラムはtty1固定のデバイスになってしまうのですか?
puTTY等で接続した場合はデバイスはtty0・tty1・tty2・・・となってゆく為、
そのjavaプログラムが出力するのは接続したターミナルと思っているのですが・・

> puTTYはインストールしてるのですが、それだと、puTTYでjavaプログラムを立ち上げろと
> いうことでしょうか? その場合ウィンドウズがシャットダウンできませんよね?・・・・;;


そのjavaプログラムは24時間稼動しなくてはいけないんですね・・・
失礼致しました。
 Re: 漢字表示 ( No.21 )
日時: 2005/03/05 21:22
名前: hiro

すみません;; javaプログラムはサーバで使うので24時間稼動です;;
 Re: 漢字表示 ( No.22 )
日時: 2005/03/05 21:24
名前: hiro

>ちなみに、そのjavaプログラムはtty1固定のデバイスになってしまうのですか?
>puTTY等で接続した場合はデバイスはtty0・tty1・tty2・・・となってゆく為、
>そのjavaプログラムが出力するのは接続したターミナルと思っているのですが・・


実行したターミナルです。
 Re: 漢字表示 ( No.23 )
日時: 2005/03/05 22:01
名前: 管理者

なるほど、24時間稼動ならコンソールからの実行になりますね。
気になる点がひとつ、実行したら終了するまでコンソールからはサーバに対して何も処理できなくなるのですが・・・

とりあえず、コンソールで漢字が出るような対処法を考えた方が無難ですね。
 Re: 漢字表示 ( No.24 )
日時: 2005/03/05 22:06
名前: hiro

>とりあえず、コンソールで漢字が出るような対処法を考えた方が無難ですね。
はい;;

>になる点がひとつ、実行したら終了するまでコンソールからはサーバに対して何も処理できなくなるのですが・・・
はい、できなくなりますが、Alt+F2キーなどを押して別コンソールに切り替えることはできます^^ バックグラウンドにまわすとjavaが停止してしまう;;

なんとかコンソール上で日本語表示できるようにはならないものでしょうか?;;
 Re: 漢字表示 ( No.25 )
日時: 2005/03/05 22:28
名前: 管理者

原因が何なのかが分からないと難しいですね・・

そのjavaプログラムを提供している所に問い合わせて見るのも手ですね。
こちらも他に方法がないか調べて見ます。
 Re: 漢字表示 ( No.26 )
日時: 2005/03/05 22:41
名前: hiro

はい!問い合わせてみます。
ご迷惑をおかけします;; ペコペコ
 Re: 漢字表示 ( No.27 )
日時: 2005/03/06 15:05
名前: hiro

javaプログラムを提供いただいてるところから返信が帰ってきました。

コンソールの設定で、日本語表示をSJISにするとうまくいくとおもいます。
わたしのほうではTeraTermで問題なくでております。

ということなのですが、SJISにすると・・・とありますがこれは/etc/sysconfig/i18n
のところで設定してやればいいのでしょうか?
そのばあい、SJISとはどういうふうに書けばいいのでしょうか?

よろしくお願いします ペコリ
 Re: 漢字表示 ( No.28 )
日時: 2005/03/06 16:23
名前: hiro

てか、うちのfedoraのlocaleにSJIS入ってないっす・・・;;
 Re: 漢字表示 ( No.29 )
日時: 2005/03/07 07:27
名前: PINE

一応できましたが、、、
まずsjisのlocaleの作成
# cd /usr/share/i18n/charmaps/
# localedef -f SHIFT_JIS -i ja_JP ja_JP.SJIS
警告が出ますが無視して、、、、
/etc/sysconfig/i18nの
LANG="ja_JP.eucJP"

LANG="ja_JP.sjis"

SUPPORTED="ja_JP.eucJP:ja_JP:ja"

SUPPORTED="ja_JP.sjis:ja_JP:ja"
再起動で
#javaプログラム | nkf で表示されました、、、
javaは内部でunicodeを使用しますので文字コードがeucの場合
sjisをeucとみなしunicodeにエンコードしようとして失敗してると思います。
本当はInputStreamReaderで明示的にエンコードするのが正道だと思いますが
ソースの修正が不可との事なので、無理やりサーバの文字コードをsjisにしてみました。

しかし、この方法トラブルが多発する可能性があり、危険かも知れません、、、

 Re: 漢字表示 ( No.30 )
日時: 2005/03/07 07:14
名前: PINE

補足
テストに用いたJavaプログラムはShift_JISのテキストファイルをエンコード指定なしで読み込み
コンソールに出力する物で代用しました。
またlocaleが出来てるかどうかは
# locale -a | grep ja
で確認出来ます
 Re: 漢字表示 ( No.31 )
日時: 2005/03/07 14:29
名前: hiro

PINEさん、ありがとうございます。
#javaプログラム | nkf
ではコンソールになにも表示されません;;

#javaプログラム | nkf
のまま処理はしてるのですがなにも表示されません;;

でも、いろいろ調べてみると危険、エラーが頻発する等と書かれてますね。

よし!すっぱり諦めましょう!サーバ運営自体には支障ないので^^

管理人様、PINE様いままでお付き合いいただきありがとうございました。
また、問題が発生したらよろしくお願いします ペコリ
 Re: 漢字表示 ( No.32 )
日時: 2005/03/07 16:10
名前: 管理者

検証ご報告。

?現行サーバ文字体系「eucJP」にて実績稼動済み
?現行サーバ環境を試験環境に移行
?試験環境のサーバ文字体系を「Shift-JIS」に変更
?稼動確認

?で多々影響が出ました。
例を例えると、サーバから出力されるエラーメッセージ等が文字化けで表示

PINE様がご心配されている様に、「トラブルが多発する可能性あり」で正しく発生いたしました。

hiro様がご決断された様に、諦められたほうが無難ですね。
ただ不明確なのが最初からサーバの文字体系を「Shift-JIS」にした場合はどうなんだろう?って事だけです。
そもそも、インストール時に「Shift-JIS」にする方法が不明ですが・・・

どなたかご存知であれば、ご教授願います。
 Re: 漢字表示 ( No.33 )
日時: 2005/03/07 18:55
名前: PINE

hiroさん お力になれなくて申し訳ありませんでした。

管理人様 怠慢な私に代わり検証して頂き有難うございました。
きっちり最後までフォローされるご姿勢、素晴らしく思っております。
中途半端な知識で、議論を引っ掻き回した形になってしまいご迷惑をおかけしました(^^;
 Re: 漢字表示 ( No.34 )
日時: 2005/03/07 23:06
名前: 管理者

>> PINE様

私自身が解決方法に未知であった為、PINE様の案をもとに検証しただけの事です。
何よりも色々とフォローして頂いた事に感謝しております。
今後ともよろしくお願い致します。

>> hiro様

今回はお力添えになれなくて、申し訳け御座いませんでした。
私も今後、何かと勉強させて頂きますので今後ともよろしくお願い致します。
 Re: 漢字表示 ( No.35 )
日時: 2005/03/07 22:34
名前: hiro

おお!できたかも!?
#tail -f file.log
で表示させることができました。 オプション -f は追加した文字をリアルタイムで表示するというオプションです。
ですが、ぜんぜんリアルタイムじゃない;; ある程度たまってから?処理してから?表示するみたいです^^
ですが一応表示させることができたので報告に^^

管理人様、こちらこそ今後ともよろしくお願いいたします ペコリ

■ その他

ページ先頭へ


Copyright(©)2004-2018 First home server construction. All Right Reserved.