• 締切済み

これをしないと・・・

質問があります。 --------------------------------------------------- ## RFC 2045 に基づき $data をフォーマットします ## $new_string = chunk_split (base64_encode($data)); --------------------------------------------------- この処理はどういうことをしているのでしょうか? $data と $new_string ではなにが異なるのでしょうか? 宜しくお願い致します。

みんなの回答

  • kusukusu
  • ベストアンサー率38% (141/363)
回答No.1

おそらく、メール添付ファイルの処理についてのプログラムだと思います。 添付ファイル($data)をbase64でエンコードています。 また、chunk_splitで、データを一定文字数毎に(デフォルトは失念(^^;調べてください。)改行コードを挿入しています。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • フォーマット処理について

    int n = 0; String d = new String(new DecimalFormat("####").format(n)); System.out.println(d); 上記処理を実行すると、 何も表示されないことを期待したのですが、 0 と表示されました。 0 が表示されないために、"0" の時、"" に置き換えることで 間に合わせたのですが、0 が表示されないために もっといい方法がありますでしょうか。 宜しくお願い致します。

  • PHPとjavascriptで共通なエンコード方法

    PHPからjavascriptにバイナリデータ(16バイト程度)を受け渡す 処理を作成しているのですが、うまく動作しないので、相談します。 バイナリデータをエンコードしてPHPからjavascriptに 以下の流れで引き渡しています。 (1)PHPのbase64_encodeでバイナリデータをエンコード (2)エンコードしたデータをjavascriptに出力 (3)javascriptでデータをデコード (3)のデコードには次のページのbase64.jsなど、いくつかの デコード方法を試してみました。 http://www.onicos.com/staff/iz/amuse/javascript/expert/ しかしながら(1)の元のデータと(3)でデコードしたデータが 一致しません。 質問したいのは以下の2点です。 ・PHPのbase64_encodeとjavascriptのbase64エンコードは  一般的に方式が違うのでしょうか。同じbase64なので  同じコードが生成されると考えたのですが、そうでは  ないのでしょうか。 ・base64_encodeでも、その他の方法でもかまわないので  PHPとjavascriptで共通なエンコード方式、あるいは  PHP上のバイナリデータをjavascriptに正しく受け渡す  方法があれば教えて下さい。 よろしくお願いします。

  • Arraylistを使用し売上集計のコード作成

    プログラミング課題で質問です。 売上集計でCSVからデータを読み込み 支店データ 000,沖縄 001,北海道 というデータファイルと 商品データ SE001,テレビ SE002,レンジ というデータファイル 売上データ”.rcd”拡張子ファイル 支店:001 商品:SE001 売上金額:29800 というデータが入っているファイル この3つのファイルをArraylistを使用し作成しています 最後は支店ごとの売上金額と商品ごとの売上金額を 集計しなければなりません。 理想では売上データファイルと商品データファイルの3項目に売上金額の項目を追加する ように作成したいです。 初心者でわかりにくい説明だとは思うのですが ご指導ください。 いきずまってしまって進めません。 考え方などもまだまだなので一応今できているコードを記載します 途中までですが。。。。。。。 解説などで教えてもらいたいです。 *********************************public class UriageSyukei { public static void main (String[] args) { //指定されたディレクトリ File directory = new File(args[0]); /* * 1.支店定義ファイル * */ File branchFile = new File(directory + "\\branch.lst"); //変数を宣言 FileInputStream fis = null; InputStreamReader isr = null; BufferedReader br = null; ArrayList<List<String>> branchData = new ArrayList<List<String>>(); //支店定義ファイル処理 try { if (!branchFile.exists()) { System.out.println("支店定義ファイルが存在しません"); return; } fis = new FileInputStream(branchFile); isr = new InputStreamReader(fis); br = new BufferedReader(isr); String line ; while ((line = br.readLine()) != null) { List<String> branch = line.split(","); //配列の長さ if (branch.length != 2 || branch[0] == null || branch[1] == null) { System.out.println("支店定義ファイルのフォーマットが不正です"); return; } branchData.add(branch); } /* * 2.商品定義ファイル */ File commodityFile = new File(directory + "\\commodity.lst"); ArrayList<String[]> commodityData = new ArrayList<String[]>(); //商品定義ファイルの処理 if (!commodityFile.exists()) { System.out.println("商品定義ファイルが存在しません"); return; } fis = new FileInputStream(commodityFile); isr = new InputStreamReader(fis); br = new BufferedReader(isr); while ((line = br.readLine()) != null) { String[] commodity = line.split(","); //配列の長さ if (commodity.length != 2 || commodity[0] == null || commodity[1] == null) { System.out.println("商品定義ファイルのフォーマットが不正です"); return; } commodityData.add(commodity); } /* * 3.集計 */ //.rcdに該当する拡張子を検索 ArrayList<String[]> salesData = new ArrayList<String[]>(); String[] salesFiles = directory.list(); for (String salesFile : salesFiles) { if (!salesFile.endsWith(".rcd")) { continue; } File rcdFile = new File(directory + "\\" + salesFile); fis = new FileInputStream(rcdFile); isr = new InputStreamReader(fis); br = new BufferedReader(isr); String salesBranch = br.readLine(); String salesCommodity = br.readLine(); String price = br.readLine(); *************************************** できているのはここまでです。 途中修正などたくさんあると思いますが これを元に作成していきたいので教えてください よろしくお願いします。

    • ベストアンサー
    • Java
  • splitと同じ処理

    たとえば、 String[] s = new String[10]; String str = "abc:def:ghijk:lmn" s = str.split(":"); と同じようなことをsplitを使わずに簡単に行う(定石的な)方法はないでしょうか? 正規表現ではなく文字列による区切りのみの場合を考えます。

    • ベストアンサー
    • Java
  • splitの逆の処理

    splitと逆の処理を行うものはありますか。 例えば、@a =split(/^/ , $base ); で @aから逆にbaseを作りたい場合どうすればいいのでしょうか。

    • ベストアンサー
    • Perl
  • PHPのSHA256変換について

    C#で以下のロジックがあるのですが、 using System.Text; using System.Security.Cryptography; private static string getHash(string data, string salt, int stretchingcount, Encoding encode) {     int m = salt.Length / 2;     string tmp = salt.Substring(0, m) + data + salt.Substring(m);     byte[] buf = encode.GetBytes(tmp);     SHA256CryptoServiceProvider algorithm = new SHA256CryptoServiceProvider();     for (int i = 0; i < stretchingcount; ++i)     {         buf = algorithm.ComputeHash(buf);     }     return BitConverter.ToString(buf).Replace("-", string.Empty); } こちらのソースをPHPで同じ結果になるように実装したいのですが、 同じ結果にならず、困っています。 PHP側のソースは以下の通りです。 public static function funcPrivacyCheck($data,$salt,$stretchingcount){ $m = strlen($salt) / 2; $tmp = substr($salt,0,$m).$id.substr($salt,$m); $tmp = base64_encode(utf8_encode($tmp)); $hash = ''; for ($i = 0; $i < $stretchingcount; $i++) { if($hash <> ''){ $hash = hash_hmac('sha256' ,$hash, false); }else{ $hash = hash_hmac('sha256' ,$tmp, false); } } return $hash; } エンコードは、UTF-8を指定することが前提です。 ご教授頂きますようよろしくお願いいたします。

    • ベストアンサー
    • PHP
  • MYSQLから、画像表示するには

    symfonyを使用してます。 DBの型はBLOBです、画像の保存はphpadminから、参照ダイアログで登録。 「$photos->getPhotoData()」←DBからとってきたデータ。 以下のソースで、画像表示すると思うのですが、表示しない。 ---ソース1--------------------------------------------- echo '<img src="data:image/jpeg;base64,'.base64_encode($photos->getPhotoData()).'" />' ; ------------------------------------------------------- ソース1を実行すると、「Warning: base64_encode() expects parameter 1 to be string, resource 」と言うエラーが出る。 ---ソース2--------------------------------------------- echo $photos->getPhotoData(); ------------------------------------------------------- ソース2を実行すると「Resource id #126 」と表示される。 表示させる方法をご教授ください。

    • ベストアンサー
    • PHP
  • C#経過時間の求め方

    C#経過時間の求め方 お世話になっております。 初歩的な質問かもしれないので申し訳ないのですが、 やり方がわからなかったため質問させていただきます。 現在日時から定義の時間を引いた経過時間を求めたいのですが、やり方がわかりません。 現在、以下のようにやっているのですが、 データ型の規定を外れてしまうためエラーになってしまいます。 --------------------------------------------- string date = "2010/09/25"; string time = "13:00:00"; string[] b = {}; string[] c = {}; DataTime a; b = date.Split('/'); c = time.Split(':'); a = DateTime.Now.AddYears(-int.Parse(b[0])); a = DateTime.Now.AddMonths(-int.Parse(b[1])); a = DateTime.Now.Add(new TimeSpan(-int.Parse(b[2]), -int.Parse(c[0]), -int.Parse(c[1]), -int.Parse(c[2]))); --------------------------------------------- 経過時間を求めたいので、 ○時間○分だけでも表示できるようにしておきたいです。 何か適切な方法はありませんでしょうか? ご回答頂ければありがたく思います。 宜しくお願い致します。

  • テキストファイルが読み込めない

    みなさんはじめまして、下記ソースなんですが「FileInputStream fi = new FileInputStream(inputFile);」の手前までは処理が流れるの ですが、その後の処理が流れなくて困っています。 ターゲットとなる「test.txt」ファイルはHTML・JAVAソースファイル クラスファイルと同じフォルダに存在します。 特に保存先等を指定していないので、必然的に同じフォルダ内を見てフ ァイルを読み込みに行くんですけど、読み込まず、そのまま処理が流れ てしまいます。 どこかやり方がいけないところがあるんでしょうか? public String FileInput(){ byte data[] = new byte[16]; String number = ""; try { File inputFile = new File("test.txt"); FileInputStream fi = new FileInputStream(inputFile); /* データを読み込み */ if(fi.read(data)== 16){       /* 0バイト目から9バイト目までを読み込み */ if(new String(data,0,9).equals("010105502")){         /* 0バイト目から16バイト目までをnumberに代入 */ number = new String(data,0,16); } } fi.close(); } catch(FileNotFoundException e){ e.printStackTrace(); } catch(IOException e){} return(number); }

    • ベストアンサー
    • Java
  • String変数を分割するメソッドってありますか?

     urizakaです。  さて、現在データベースから検索して持ってきたデータ(住所データです)をString変数に代入し、そのデータを一定ルールで区切って、区切った間に改行コードを入れるという処理を考えているのですが、javaにはVBAのsplit関数みたいなものってあるのでしょうか?JavaScriptにはあるみたいなので、Javaにもあるのではないかとは思うのですが…

    • ベストアンサー
    • Java