SAK 図書館

SAK Streets メインストリート 図書館・カフェ 一覧 SAK Streets 検索
| VB | SQL | Perl | PHP | ASP | JSP | C | PC | HP | FAQ | フリーソフト |

JAVA Servlet、JSP 基礎編15 - InputStreamReader、OutputStreamWriter

■テキストファイルエンコード指定入出力

  OS が S-JIS でないと、通常のファイルI/O では、入出力で S-JIS にならず、
  困ったことになる。
  バイナリストリームとテキスト入出力を結びつける方法があったので試して
  みた。これだと、期待した文字コードで入出力が行える。

/*
========================================================================
  textio1.java  テキストファイル入力
========================================================================
*/
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class textio1 extends HttpServlet {

  public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException {
    String fnm = "g:/tmp/sjis.txt";  // S-JIS テキストファイル

    // レスポンス準備
    response.setContentType("text/html; charset=MS932");
    PrintWriter out = response.getWriter();

    // HTML ヘッド出力
    out.println("<HTML>");
    out.println("<HEAD>");
    out.println("<META http-equiv=\"Content-Type\" content=\"text/html; charset=Shift_JIS\">");
    out.println("<TITLE>テキストファイル入力</TITLE>");
    out.println("</HEAD>");
    out.println("<BODY>");

    // テキストファイル入力
    FileInputStream fno  = new FileInputStream(fnm);
    BufferedReader bno = new BufferedReader(new InputStreamReader(fno, "MS932"));
    String rec;
    while ((rec = bno.readLine()) != null) {
      out.println(rec + "<BR>");
    }
    bno.close();
    fno.close();

    // HTML テイル出力
    out.println("</BODY>");
    out.println("</HTML>");
  }
}

/*
========================================================================
  textio2.java  テキストファイル出力
========================================================================
*/
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class textio2 extends HttpServlet {

  public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException {
    String fnm = "g:/tmp/sjis.txt";  // S-JIS テキストファイル

    // レスポンス準備
    response.setContentType("text/html; charset=MS932");
    PrintWriter out = response.getWriter();

    // HTML ヘッド出力
    out.println("<HTML>");
    out.println("<HEAD>");
    out.println("<META http-equiv=\"Content-Type\" content=\"text/html; charset=Shift_JIS\">");
    out.println("<TITLE>テキストファイル出力</TITLE>");
    out.println("</HEAD>");
    out.println("<BODY>");

    // テキストファイル出力
    FileOutputStream in = new FileOutputStream(fnm, false);
    OutputStreamWriter fno = new OutputStreamWriter(in, "MS932");
    fno.write("あいうえお\n");
    fno.write("かきくけこ\n");
    fno.close();
    in.close();
    out.println("<P>処理終了</P>");

    // HTML テイル出力
    out.println("</BODY>");
    out.println("</HTML>");
  }
}

■JAVA Servlet、JSP 基礎編資料
■JAVA Servlet、JSP + PostgreSQL 編資料
■JAVA Servlet、JSP + Oracle9i 編資料
■PostgreSQL 編、JAVA Servlet、JSP 編資料
■MySQL 編資料
■SQL 基礎編資料
■SQL 基礎実地編資料
■SQL チューニング編資料
■Oracle PL/SQL 編資料
| VB | SQL | Perl | PHP | ASP | JSP | C | PC | HP | FAQ | フリーソフト |

SAK Streets メインストリート 図書館・カフェ 一覧 SAK Streets 検索



Copyright (C) 1999-2017 Y.SAK