인코딩 변환

인코딩 변환

QA

인코딩 변환

본문

아래는 c#으로 파일 인코딩을 utf-8로 바꿔주는 역할을 합니다.

이걸 php으로 변환 가능 할 까요?

c# 이 윈도우 밖에 지원 안되서 어려움을 겪고 있습니다.

 


// Decompiled with JetBrains decompiler
// Type: EncodingChanger.Program
// Assembly: EncodingChanger, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
// MVID: 96F72022-65C4-45AF-9226-92B80F08EF02
// Assembly location: D:\MDweb\apache\web\EncodingChanger.exe
using System.Diagnostics;
using System.IO;
using System.Text;
using System.Web;
namespace EncodingChanger
{
  internal class Program
  {
    private static void Main(string[] args)
    {
      string str = HttpUtility.UrlDecode(args[0]);
      if (Program.GetEncoding(str) != Encoding.UTF8 && Program.GetEncoding(str) != Encoding.ASCII)
        Program.SaveToUTF_8(str);
      Process.GetCurrentProcess().Kill();
    }
    public static void SaveToUTF_8(string textFilePath)
    {
      using (StreamReader streamReader = new StreamReader(textFilePath, Program.GetEncoding(textFilePath), true))
      {
        using (StreamWriter streamWriter = new StreamWriter(textFilePath + "temp", false, (Encoding) new UTF8Encoding(false)))
        {
          streamWriter.Write(streamReader.ReadToEnd());
          streamWriter.Close();
          streamWriter.Dispose();
        }
        streamReader.Close();
      }
      File.Delete(textFilePath);
      File.Move(textFilePath + "temp", textFilePath);
    }
    private static Encoding GetEncoding(string filename)
    {
      using (StreamReader streamReader = new StreamReader(filename, Encoding.Default, true))
      {
        if (streamReader.Peek() >= 0)
          streamReader.Read();
        return streamReader.CurrentEncoding;
      }
    }
  }
}

이 질문에 댓글 쓰기 :

답변 1

답변을 작성하시기 전에 로그인 해주세요.
전체 31
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT