input要素を使ったマークアップについて

投稿者: Anonymous _x000D_ _x000D_ <style>_x000D_ .show {_x000D_ display:none;_x000D_ }_x000D_ _x000D_ input:checked ~ .show {_x000D_ display:block;_x000D_ }_x000D_ </style>_x000D_ _x000D_ <input id=”on-off” type=”checkbox”>_x000D_ <label for=”on-off”>表示する</label>_x000D_ <p class=”show”>表示される(通常時display:none)</p> _x000D_ _x000D_ _x000D_ ご回答頂けると幸いです。 このように何かを表示を切り替える際にinput要素を使用することは、 マークアップ的には間違いなのでしょうか。 最も適切な使用方法としてはformタグ内でデーター送信のために用いることだとは存じていますが、私は明らかな間違いではないと現時点では思っています。 input要素はformを構成する要素としてフォーム部品ともしばしば説明されていますが、 HTML Living StandardやMDNを見る限りではform内の使用に限定されている訳でもなく、 inputタグ単品での説明からはユーザーからの選択やコントロール、データを受ける要素という認識を受けました。 このようなマークアップに至った経緯を申しますと、この程度ならjavascriptで記述しなくてもいいのでは無いか?と思った次第です。script記述量は少しでも少ない方が読み込みの面でも良いと思いましたので… 同じエンジニアの方と意見が割れたので質問させていただきました。 解決 HTML5 4.10 Froms 4.10.1 Introductionには次の一文があります。 No client-side scripting is needed in many cases, though an…(Continue Reading)

自クライアントでPHPをもちいてMy SQLとPHPファイルの生成

投稿者: Anonymous 自PC上でPHPをもちいてMy SQLとPHPファイルをコードから生成することは可能ですか? macOS MAMP 解決 自PC上でPHPをもちいてMy SQLとPHPファイルをコードから生成することは可能ですか? MySQL を生成するという文言からは mysqld とか mysqldump とかの実行ファイルであるとかヘルプファイルであるとかを作るとしか読めませんが MySQL 開発部隊が PHP を使ってこれらを作っているとは思えません。普通にコンパイラやリンカを使って作っているでしょう。 マルチポスト先でも質問の意図が理解できなくて読者が困っています。まあ普通 Web Front/Back を作るのであれば「アクセスするだけでデータベースファイルや PHP 実行ファイルが作られる」ような構造はセキュリティ的にあり得ません。 こういう場(Q&A 掲示板)で質問するならもうちょっと勉強して「質疑応答が成立する」程度の文章が書けるくらい知識を付けてください。 回答者: Anonymous

PostfixとGoogleメールアカウントを用いてPHPからメール送信( mb_send_mail() )ができない

投稿者: Anonymous stackoverflowにて初めての質問です。 不慣れな部分がありますが、どうかよろしくお願いします。 現在、「PHP+MySQLマスターブック」という書籍に沿って学習を進めているのですが、 mb_send_mail()を使って上手くメールを送信することができません。 以下のプログラムを実行すると、「メールを送信しました(以下略)」と表示されるのですが、実際にはメールが送信されている様子はありません。 ========== 解決済み ========== 原因は、DNSの設定上手くいっていないことにありました。 お手数おかけしました。 同様に (Host or domain name not found. Name service error for name=smtp.gmail.com type=MX: Host not found, try again) のエラーに悩まされている方は、おそらくDNSの設定で躓いていることが考えられるので、 システム環境設定から、Network->Advanced…->DNSと進み、 Google Public DNSの8:8:8:8を一番上に追加してみてください。 ============================== —- mail.php —– <?php $to = “<自分のgmailアドレス>@gmail.com”; $subject = “(件名)テストで送信”; $message = “(本文)受信できるかな?”; $add_header = “From: <自分のgmailアドレス>@gmail.com”; if(mb_send_mail($to,$subject,$message,$add_header)) {…(Continue Reading)

Node.jsで特定の文字列から固有のidを作成する方法について

投稿者: Anonymous 現在、uuid-by-stringを使用しています。 uuid-by-stringを使用すると、基本的には被らないuuidが作成されるのですが const getUUID = require(‘uuid-by-string’); console.log(“おっぱい:”+getUUID(“おっぱい”)); console.log(“ちっぱい:”+getUUID(“ちっぱい”)); とすると、何故かuuidが被って、どちらも同じidで おっぱい:A8BE6F3B-3DED-4879-8A0B-4705EEBAF673 ちっぱい:A8BE6F3B-3DED-4879-8A0B-4705EEBAF673 が生成されてしまうみたいです。 例が下品な単語ですみません…。 日本語には対応していないのでしょうか? 他に何か日本語文字列から、固有の英数字idを生成する方法はないでしょうか? 解決 他に何か日本語文字列から、固有の英数字idを生成する方法はないでしょうか? 大きく分けると、ハッシュ値を使う方法と、ASCII の範囲に収まる方式でエンコードする方法があります。 ハッシュ値を使う方法は、文字列が長くても得られる ID の長さを一定に出来ます。 しかし、元の文字列が長すぎなければ、エンコードしてそのまま ID に使えるかも知れません。 (UUID の例にはuuid モジュールを使用しています。uuid-by-string というモジュールより信頼できると思います) “use strict” // ハッシュ値の16進表記 const crypto = require(“crypto”) function mkhash(str) { //const hash = crypto.createHash(“md5”) //const hash = crypto.createHash(“sha1”) const hash = crypto.createHash(“sha256”) hash.update(str)…(Continue Reading)

AVPlayerViewController の controlStyle

投稿者: Anonymous これまで動画再生には MPMoviePlayerController を使用していたのですが、iOS 9.0 からdeprecated となったので AVPlayerViewController に乗り換えようと思っているのですが、MPMoviePlayerControllerで、 moviePlayerController.controlStyle = MPMovieControlStyleFullscreen; とした時に画面左上に表示されていた再生を終了する[Done]ボタンをAVPlayerViewControllerで表示させる方法がわかりません。 avPlayerViewController.showsPlaybackControls = YES; としても再生コントロールは表示するのですが、再生を終了するボタンがありません。 AVPlayerViewController を使って再生画面を表示する時に[Done]ボタンもしくは再生終了させるボタンを表示させる方法を教えてください。 解決 presentViewControllerメソッドで、AVPlayerViewControllerをモーダル表示すれば、「Done」ボタンが表示されます。(iOS 9.1のシミュレータで確認しました) モーダル表示ではなく、UINavigationController内で表示しているという場合には、アプリ側で「Done」ボタンを作る必要があると思います。 回答者: Anonymous

bashの「レントジョブ」とは何を意味するのでしょうか

投稿者: Anonymous bashでジョブについて勉強中です。help コマンドでは下記のように出ますが、 $ help fg fg: fg [job_spec] ジョブをフォアグランドにします。 JOB_SPEC で識別されたジョブをフォアグランドにして、現在のジョブにします。 もし JOB_SPEC が存在しない場合、シェルが現在のレントジョブとして考えている ものが利用されます。 (以下省略) 文中の「レントジョブ」という用語がわかりません。ネット検索しても出てきません。どなたか意味を教えていただけないでしょうか。 bashのバージョンは GNU bash, バージョン 5.0.3(1)-release (x86_64-pc-linux-gnu) です。 解決 $ LC_ALL=C help fg とすると英語でヘルプが表示されますが、これによると If JOB_SPEC is not present, the shell’s notion of the current job is used. となっていますのでオイラ流に翻訳すると「シェルがカレントジョブと思っているものが使われます」となり、単純に翻訳の際の誤記ですね。 s/レント/カレント/ 回答者: Anonymous

html2canvasでキャプチャした画像が空になる

投稿者: Anonymous html2Canvasの DOMを画像に書き出す方法 を参考にさせていただき、コードを書いたのですが、 スクリーンショットを撮るボタンを押しても、空の画像ファイルが生成されるだけです。 クリアボタンも効きません…。 私が、ターゲットとなるdivの中で、img srcにphp変数を使用しているからなのでしょうか? しかしローカルファイルに置換してもダメでした。 <div id=”target_screen”> <?php echo “<img class=”effectedImage” src=”$image”>”; ?> </div> テストとして、この画面下部にスクリーンショットを表示しようとしていますが、 最終的には、取得した画像を別のphpへpostしたいと考えています。 ご教授願います。 解決 HTMLページと同じオリジン(由来、大抵ドメインで決まります)の画像を使用していますか? Canvas要素に別オリジンの要素を描画した場合、そのCanvas要素の内容は取り出せなくなります。 セキュリティ上の制約です。 この制約がないと、本人しか閲覧できないはずの写真をJavaScriptで盗む、といった事が可能になるからです。 自分が所有しているサーバ同士であれば、同じオリジンとして扱う方法もあるようです。https://developer.mozilla.org/ja/docs/Web/HTML/CORS_enabled_image 回答者: Anonymous

Material.SetTextureOffset()の引数の意味

投稿者: user28203 GetComponent<Renderer>().sharedMaterial.SetTextureOffset(“_MainTex”,offset); の引数の意味を公式リファレンスで調べたのですがその意味がわかりません。 第一引数のname: Property name, for example: “_MainTex”とはどのよう意味なのでしょうか?プロパティの名前例は_maxitexみたいなことが書いてありますがこれはどのような意味なのか知りたいです。 公式リファレンスページ: https://docs.unity3d.com/ja/current/ScriptReference/Material.SetTextureOffset.html public class BackGround : MonoBehaviour { public float speed = 0.1f; // Use this for initialization void Start () { } // Update is called once per frame void Update () { float y = Mathf.Repeat(Time.time * speed,1); Vector2 offset = new Vector2(0,y);…(Continue Reading)

ポインタの配列を利用したい

投稿者: Anonymous private var test1: Int = 0 private var test2: Int = 0 private var test3: Int = 0 private var testArray: [Int] { get { return [test1, test2, test3] } } 上記とすることで配列定義できることを教えていただいたのですが、 ポインターの配列とすることはできないのでしょうか。 下記のようではだめでした。 private var testArray: [UnsafePointer<Int>] { get { return [&test1, &test2, &test3] } } 解決 Swiftでは&記号は”address of”演算子ではなく、単にinoutパラメータであることを明示する(それによって関数呼び出しで値が変更される可能性があることをプログラマーに意識させるという効果があります)だけのもので、関数(メソッド含む)呼び出し以外では、ポインターを取得することはできません。 関数呼び出しなら良いんでしょということでこんな関数を使うことができるんですが、 private var…(Continue Reading)

継承先クラスでは実装されているかも知れないメソッドを基底クラス内で扱いたい

投稿者: Anonymous 昔JavaScriptで書いた変なコードをTypeScriptに置き換えようとしています。ですが Property ‘g’ does not exist on type ‘BaseClass’. というエラーを回避できません。 オリジナルのコードのロジックを改変せずに、型定義や修飾子の追加で移行する方法を知りたいです。 class BaseClass { h() { /* … */ } f() { if (this.g) { this.g(); this.h(); } } } class ExampleClassA extends BaseClass { /* 継承してgメソッドを実装する場合 */ g() { /* … */ } } class ExampleClassB extends BaseClass { /* 継承してもgメソッドを実装しない場合 */…(Continue Reading)

Swiftのネストを浅くしたい

投稿者: Anonymous 以下のSwiftコードのネストを浅くしたいのですが、いい案はないでしょうか? task = URLSession.shared.dataTask(with: URL(string: url)!) { (data, res, err) in if let obj = try! JSONSerialization.jsonObject(with: data!) as? [String: Any] { if let items = obj["items"] as? [[String: Any]] { self.repo = items DispatchQueue.main.async { self.tableView.reloadData() } } } } 解決 はじめまして、URLSessionで非同期なので、タイミングによってはselfが解放されている可能性まで考えてのコードです。 guard文の多用になってあまりすっきりはしていないかも知れませんが、あえて guard let a = b, let c = dの様な一つのguard文で複数のチェックを行う事は今回は避けています。…(Continue Reading)

c# でのデバッグの時のみ走るロジックの書き方

投稿者: Anonymous c#において、if def相当のデバッグ用ロジックはどう書けば良いですか? 解決 C言語と同様に#if #else #endifのプリプロセッサ ディレクティブが使えます。またデバッグビルドを行う際、DEBUGが定義されるよう構成されているため#if DEBUGと記述することができます。 ただし、これは厳密には「デバッグの時のみ走る」でなく、デバッグビルドの場合は常に走ります。 一般にデバッグ時/非デバッグ時で処理を分けるべきではありません。しかし、適切に動作しているかのチェックコードを埋め込むことはよくあり、C#言語においても、Debug.Assertメソッドが用意されています。こちらもデバッグビルドの場合は常に走るチェックコードとなります。 厳密な意味で「デバッグの時のみ走る」ですとDebugger.IsAttachedプロパティが用意されています。デバッグ中=デバッガーに接続されている場合にのみこのプロパティはtrueを返しますので、if文で判定して必要なロジックを書くことができます。 回答者: Anonymous

Tera Termのログファイル名に変数を入れたい

投稿者: Anonymous Tera termの logopen logname 0 1というコマンドを使って, マクロの中でログを取得しています。 現在、ホスト名と日付を入れたログファイルを作成するのに YYYYMMDD_myhost_HHMMSS.log としたいので gettime adddate “%Y%m%d_” gettime addtime “_%H%M%S.log” logname = adddate strconcat logname myhost strconcat logname addtime logopen logname 0 1 としています。myhostの部分が変数であったり、定数であったりするので 文字列としてつなげる方法はstrconcatしかないと思っているのですが もう少し短く綺麗に書く方法はないのでしょうか? よろしくお願いいたします。 解決 以下のように sprintf2 を使うのはどうでしょうか getdate date “%Y%m%d” gettime time “%H%M%S” sprintf2 logname “%s_%s_%s.log” date myhost time logopen logname 0 1 回答者:…(Continue Reading)

絵を描くアプリで線はundo,redoできるのですがimageviewがundo,redoできません。

投稿者: Anonymous スクロールビューの下にimageViewを配置してあります。 @IBOutlet weak var scrollView: UIScrollView! @IBOutlet weak var canvasView: UIImageView! var saveImageArray = [UIImage]() //Undo/Redo用にUIImage保存用 // タップされた座標にflowerを追加する(buttonをクリックした時の処理) let flower = UIImageView(image: UIImage(named: “flower”)) flower.center = (sender as AnyObject).location(in: self.view) **canvasViewの拡大を可能にしたい為、addSubView(flower)にしたら簡単にタップ位置にimageの大きさで表示されかつ拡大出来たので良かったのですが、結果としてSubViewとcanvasViewでは格納場所が違うようで以降のundo処理が出来ない状態です。 描いた線,画像の拡大,縮小が出来てundo,redo処理が出来る様に考えています。 現在の記述で描いた線,画像の拡大,縮小は出来るのだが,画像のredo,undoが出来ないです。 (この処理の中には線の記述はないです) canvasView.addSubview(flower) //配列にcanvasView.imageを保存 currentDrawNumber += 1 saveImageArray.append(canvasView.image!) //保存している直前のimageに置き換える (undoボタンをクリツクした時の処理) @IBAction func pressUndoButton(_ sender: Any) { if currentDrawNumber <= 0 {return}…(Continue Reading)

この処理をrubyらしく処理する方法を教えて下さい

投稿者: Anonymous [ [“てつお”, “名前”], [“男”, “性別”], [“23歳”, “年齢”], ] ↓ { “名前” => “てつお” “性別” => “男” “年齢” => “23歳” } phpしか使ったことしかなく、mapやeachなどを使って上記の処理をする方法がわかりません。 data.map{|d| { d[1] => d[0] } } こうすると 配列の中にハッシュが格納される形になってしまいうまく行きませんでした。 追記 data.map{|d| [d[1], d[0]] }.to_h とすることで出来ました。 このコードは普段からrubyを扱っている方でもわかりやすいコードとなっていますでしょうか。 もう少し一般的な書き方があればおしえてください。 よろしくお願いします。 解決 map を次のように書き換えるとシンプルになります。(これは、map { |x| x.reverse } と等価です) data.map(&:reverse).to_h Hash#invert を利用する方法もありますが、パフォーマンスが落ちるかもしれません。(極端に大きなデータだったり、繰り返し利用されない限り無視できる程度だと思いますが。) data.to_h.invert 回答者: Anonymous

MySQLで、2つのテーブルを結びつける手法がわかりません。

投稿者: Anonymous ユーザーが質問を投稿でき、それに回答できるというiOSアプリケーションを製作中です。 トップには質問一覧が表示されていて、 1つの質問をタップすると、それに対する回答の一覧が表示させる予定です。(図1) MySQLで質問一覧のテーブルとそれぞれに対する回答のテーブルを作成しましたが、(図2) 質問テーブルと、回答テーブルと結びつける手法がわかりません。 MySQLははじめて触れるため、見当違いな質問をしているかもしれません。 今回のように、あるテーブルともう一方のテーブルを結びつけるためには、 どのような手法があるでしょうか? そもそも、このようなことができるのでしょうか? 関連するキーワードなどをご教示ください。 解決 関連テーブル、一対多関係、joins、データベース正規化、データベース基本関連、などで調べられることをオススメします。 データベースの基本概念ですので、どれを読んでもそう外れないと思います。 例えば、下記のようなテーブル構成なら、 users: table – user_id: integer – user_name: varchar(100) questions: table – question_id: integer – user_id: integer – created_at: datetime – content: text answers: table – answer_id: integer – user_id: integer – created_at: datetime – content: text questions_answers:table – question_id:…(Continue Reading)

AccessVBAで、フォームをダイアログで開いているはずが処理が流れてしまう

投稿者: Anonymous お世話になります。 AccessのVBAで、フォームをダイアログで(そこでブロックして)表示しようとしているのですが、どうやってもそのまま処理が流れてしまいます。 行っていることは、 プロパティでは ・ポップアップ = はい ・作業ウィンドウ固定 = はい 実際にコードで表示する際には、 DoCmd.OpenForm “F_Floor”, , , , , acDialog と 記述しています。 これだけの設定でできるはずなのですが、他に何か原因がありますでしょうか。 下記にその部分コードを記述します。 For cnt = 0 To 3 MsgBox “” & cnt & “階です。” DoCmd.OpenForm “F_Floor”, , , , , acDialog MsgBox “a” Next 『○階です』の部分が出てから『a』が、F_Floorの終了を待たずに出てしまいます。 Accessのバージョンは2010です。 よろしくお願いいたします。 解決 DoCmd.OpenForm は、第1引数のフォーム名以外は省略可能です。そのため、第2引数以降は引数名を明記しなくてはなりません。 DoCmd.OpenForm “F_Floor”, , ,…(Continue Reading)

pythonドックテストのエラーについて

投稿者: Anonymous pythonをやってみようと思い環境が正常動作するか試しにネットにあったソースを動かしてみました。 環境: windows10 64bit python 2.7,3.6 ソースのあったサイトです バージョンはわかりませんでしたが2,3両方で動きました 下記がそのコードです。 #! /usr/bin/env python # -*- coding: utf-8 -*- import heapq class Dijkstra(object): def dijkstra(self, adj, start, goal=None): ”’ ダイクストラアルゴリズムによる最短経路を求めるメソッド 入力 adj: adj[i][j]の値が頂点iから頂点jまでの距離(頂点iから頂点jに枝がない場合,値はfloat(‘inf’))となるような2次元リスト(正方行列) start: 始点のID goal: オプション引数.終点のID 出力 goalを引数に持つ場合,startからgoalまでの最短経路を格納したリストを返す 持たない場合は,startから各頂点までの最短距離を格納したリストを返す >>> d = Dijkstra() >>> d.dijkstra([[float(‘inf’), 2, 4, float(‘inf’), float(‘inf’)], [2, float(‘inf’), 3, 5, float(‘inf’)],…(Continue Reading)

Keras optimizer.get_updates(), K.function()のパラメータで[]は何ですか?

投稿者: Anonymous def critic_optimizer(self): #placeholder for target??? disc_reward = K.placeholder(shape=(None,1)) #output of critic value = self.critic.output #MSE error loss = K.mean(K.square(disc_reward – value)) optimizer = Adam(lr=self.critic_lr) #what is the second [] parameter??? updates = optimizer.get_updates(self.critic.trainable_weights, [], loss) #[] is an empty list for outputs? https://www.tensorflow.org/api_docs/python/tf/keras/backend/function train = K.function([self.critic.input, disc_reward], [], updates=updates) return train 上記はA2CをKerasにて書いた例ですが、パラメータの[]が何か分かりません。 以下のメソッドでコールされてます。…(Continue Reading)

C# WPF タッチキーボードを表示させたくない

投稿者: Anonymous お世話になっています。 C#のWPFでアプリを開発しています。 Windows10のタブレットモードで、TextBoxをタップすると自動的にタッチキーボードが表示されますが、これを表示させないようにしたいです。 タッチキーボードの代わりに、画面内にキーボード風にボタンを並べてそれをタッチして入力するようにしたいですが、自動的に表示されるタッチキーボードが邪魔になるためです。 以下試してみたことです。 テキストボックスのPreviewGotKeyboardFocusイベントでEventArgsのHandledをtrueにする。 →キーボードは出なくなりましたがフォーカスも当たらなくなりました。 テキストボックスのGotFocusイベントでWindowsのプロセスからtabtipを探し出し、KILLする。 →キーボードは出なくなりましたが、エクスプローラー等でもキーボードが出なくなり文字入力ができなくなってしまいました。 何かいい方法をご存知の方いらっしゃいませんか? よろしくお願いいたします。 解決 お世話になっております。 自己レスですが、解決方法を見つました。 少しアプローチが違い、気持ちの良い方法ではありませんが、以下のURLを参考にし、TextBoxのGotKeyboardFocusでキーボードを閉じる処理を入れることで実現できました。 https://stackoverflow.com/questions/17090325/show-hiding-the-windows-8-on-screen-keyboard-from-wpf 実装したコードは次のような感じです。 txtCode.GotKeyboardFocus += (sender, eventArg) => { int iHandle = FindWindow(“IPTIP_Main_Window”, “”); if (iHandle > 0) { // close the window using API SendMessage(iHandle, WM_SYSCOMMAND, SC_CLOSE, 0); } //オリジナルのキーボードを表示する処理・・・ } 以上です。 他に何かいい方法があれば、ご教示お願いいたします。 回答者: Anonymous

laravelのKernel::scheduleメソッドに登録された毎分バッチのパフォーマンス検証するために毎分バッチの開始時にログ出力したい

投稿者: Anonymous 毎分バッチのパフォーマンス検証のため、batch.logへscheduleへ開始ログを仕込みたいと思っています。 以下のようにすると、ログ出力についてもスケジューリングされバッチ実行時に以下のように毎回ログが出力されてしまいました。  コンストラクタで出力しようとするとterminalでエラーとなりそもそも実行できませんでした。  オーバーライドしたhandleメソッドでログ出力すると、schedule : startが2行となってしまいました。 ログ出力処理についてもバッチ化する以外になにか方法がありましたらご教授のほどお願いいたします。 protected function schedule(Schedule $schedule) { $this->logger = app(‘batch.log’); $this->logger->info(‘****************** schedule : start ******************’); $schedule->command(‘aaa’)->cron(‘* * * * * *’)->withoutOverlapping(); $schedule->command(‘bbb’)->cron(‘* * * * * *’)->withoutOverlapping(); $schedule->command(‘ccc’)->cron(‘* * * * * *’)->withoutOverlapping(); $schedule->command(‘ddd’)->cron(‘* * * * * *’)->withoutOverlapping(); //他バッチは省略 } ↑で出力されるログ [2018-07-12 02:57:00] batch.log.INFO: ****************** schedule :…(Continue Reading)

Dockerコンテナの時間をHostの時間と合わせる

投稿者: Anonymous Docker for Macを使ってUbuntu 16.10を実行しているのですが、ゲスト側の時間とホスト側の時間が一致しません どうすれば合わせられるのでしょうか? macOSの時間 $ date 2017年 3月14日 火曜日 22時30分27秒 JST Ubuntuの時間 $ date 2017年 3月 14日 火曜日 12:50:06 UTC まず、macOSでdateを実行し、その2~3秒後にubuntuで実行しました そのため数秒のズレはあると思いますが、これほど大きくはならないと思います 解決 本家ドキュメントのKnown issues に載っている問題です。 NTPサーバに接続できない場合、休止状態から戻った時に時刻が同期されないとのことです。 解決策として2つ挙げられていて、 1. 休止状態から復帰した時に docker run –rm –privileged alpine hwclock -s を実行して手動で同期させる 2. 低優先度のNTPサーバとしてlocalclockを参照させる 一時的に使用する分には1.の方法で十分かもですが、常時Dockerを動作させる場合は2.の方がいいかと思います。 回答者: Anonymous

int型としては使わない定数をenumで定義してもいいでしょうか?

投稿者: Anonymous enum { SYMBOL=100 } /* ASCII文字コードで指定する */ 上記のように定数を定義していますが、SYMBOLはstrtok_r()の2つめの引数として(const char*)SYMBOLの形で使用するだけです。 コンパイル時にエラーは出ないので文法的な辻褄はあっていると思うのですが、このような場合はやはりenumを使わずに下記のように定義するときに(コメントでなくプログラムとして)使用目的を明示するべきでしょうか? const char* SYMBOL = “d”; <774RRさんからの返答を受けて主に以下の点について質問文を修正しました> enumでまとめて定義するときはそれらが1つのグループであるかを考えるべきという視点から見るとSYMBOLは明らかに仲間外れで別に定義するほうが自然でした。 なお、SYMBOLの使用目的はstrtok_r()の2つめの引数であるdelimです。 (返答を読んで改めて調べなおしたりしているうちに、自分が”何を分かっていなかったのか”とか”どこを遠回りしていたのか”が少しづつ見えてきた気がします……。) 解決 const char* SYMBOL = (const char*) ‘d’; これは、SYMBOL を strtok_r() の第2引数 delim に渡すなら、おそらく const char* SYMBOL = “d”; ではないでしょうか。 もし、”d” と文字列で直接書くのでなく、文字コードを別に定義しておきたい、ということであれば、 /* strtok_r() の区切り文字の文字コード */ #define SYMBOL_CHARCODE 100 const char SYMBOL[2] = {…(Continue Reading)

c++でconst char*型の文字列をテンプレート関数で連結したい

投稿者: user28203 c++はstring型を使ってやれば文字列を簡単に扱えると思うのですが、あえてconst char*型を使って文字列を扱おうと思うのですが、どうすればconst char*型の文字列を連結できるのですか? 例: “abc” “abcc” の二つのconst char*型を連結して “abcabcc” と一つのconst char*型に入れたいです。調べてこの関数を使って入れたのですが、rsize_t型とsize_t型の違いについても教えていただけますでしょうか? template<typename type> type f(type a,type b) { cout << “テンプレート関数n”; return a + b; } template<> const char* f<const char*>(const char* x, const char* y) { //cout << “明示的特殊化n”; char* xx = const_cast<char*>(x); rsize_t t = sizeof(xx); strcat_s(xx, strlen(xx), y); //ここの関数で書き込みアクセスエラーが出ます。 cout…(Continue Reading)

Java+Jackson で json 文字列から object を生成する際、特定プロパティを文字列のままとしたい

投稿者: Anonymous Java+Jackson で json 文字列から object を生成する際、特定プロパティを 文字列のままとしたいのですが、そのようなことは可能でしょうか。 例えば String text = “{” + ” “key1”: “var1″, ” + ” “key2”: {“subkey1″:”subvar1”, “subkey2″:”subvar2″} ” + “}”; ObjectMapper mapper = new ObjectMapper(); Map<String, Object> json = (Map<String, Object>) mapper.readValue(text, Map.class); としたとき、 json.get(“key1”) → var1 という String を取得 json.get(“key2”) → {“subkey1″:”subvar1”, “subkey2″:”subvar2”} という String を取得 としたいのです。…(Continue Reading)

Heroku + rails4.2 + Deviseで本番環境,ログアウト画面に遷移する際にエラー

投稿者: Anonymous rails4.2 + Deviseで,本番環境のみで発生するエラーです. rake assets:precompile でプリコンパイル後に git push heroku master で立ち上げると,ログイン画面が表示されるところまでは確認しました. ログイン後,ログアウトを図ると The page you were looking for doesn’t exist. You may have mistyped the address or the page may have moved. If you are the application owner check the logs for more information. というエラーが吐かれてしまいます. こちらがGemfileの一部抜粋になります. # Bundle edge Rails instead: gem ‘rails’,…(Continue Reading)

DBから抽出したレコードを指定キーワード(複数)で絞り込むロジックについて

投稿者: Anonymous 例として掲示板システムで”コメント”テーブルから新規10件を表示、 但し”NGワード”テーブル(1レコード1NGワードを保持)にあるNGワードが含まれるコメントは 除外したい、というケースを想定して下さい。 NGワードは複数あります。 このようなケースでなるべくコストの少ない検索方法を模索しているのですが 何か良い方法は無いでしょうか。 追加:可能であればNGなコメントも取得自体はしておいてNGであるという状態を持ちたいです。 となるとNGワードテーブルを結合してそのIDがNULLかどうか、という方法しか無さそうですが・・ 解決 「なるべくコストが少ない検索方法」とのことですが、用途的にRDBMSがあまり得意としない処理のような気がします。 とりあえずこんな感じで実装して、パフォーマンスが怪しくなってきたときに全文検索エンジンの導入等を検討してみるのはどうでしょうか。 DATA create table blogs ( title varchar(100), content text ); create table ng_words ( word varchar(100) ); insert into blogs values (‘blog1’, ‘Lorem ipsum dolor sit amet, vix in tantas officiis, pro.’); insert into blogs values (‘blog2’, ‘Lorem ipsum dolor sit amet,…(Continue Reading)

Azure DevOpsのWikiで相互参照を使う方法

投稿者: Anonymous 概要 Azure DevOpsのWikiページで画像や表などを参照するときに、相互参照を利用して参照番号を自動で割り振るようにするにはどのような方法がありますでしょうか? 詳細 素の状態のMD記法で相互参照を記述することはできませんが、ローカル環境でPDF出力する際などにはpandoc-crossrefを使うなどの方法があります。 これをAzure DevOpsで実現する方法はありますでしょうか? 解決 Azure Reposおよび、Project Wikiで扱えるのは素のWikiのみのはずなので、Pandocのようなポストプロセッサーを通して、PDFにしていただくしかないと思います。 回答者: Anonymous

正規表現で複数行のソースコードを一括置換したい

投稿者: Anonymous 条件式に正規表現を使う場合どうすればいいのでしょうか? if (randomNum === 3) { if (inputAnswer === “パン”) { correctAnswerEasyQ(); commentary1.innerHTML = ‘【パン】’; commentary2.innerHTML = ‘たくさん!’; getPoint10(); description1.innerHTML = ”; } else { mistakeAnswerEasyQ(); commentary1.innerHTML = ‘【パン】’; commentary2.innerHTML = ‘たくさん!’; } } を if (randomNum === 3) { while(i < answerNum) { var answerTxt = changeAnswer(); if (answerTxt === ‘パン’) {…(Continue Reading)

エンコーディングされている文字コードはどのように確認できますか?

投稿者: Anonymous python3.xにおいて、urllib.requestモジュールを使用して、得られたデータをutf-8でデコードしたところ以下のようなエラーが発生しました。 f = urllib.request.urlopen(‘http://www.google.com’) text = f.read().decode(“utf-8”) Traceback (most recent call last): File “<stdin>”, line 1, in <module> UnicodeDecodeError: ‘utf-8’ codec can’t decode byte 0x90 in position 102: invalid start byte つきましては以下2点をお教えください。 ・エラーの原因はアクセスしたURLで得られたHTMLファイルの文字コードがUTF-8ではないからという理解であっていますか? ・アクセス先のウェブページの文字コードの確認はどのようにすれば良いのでしょうか? よろしくお願いいたします。 解決 そうですね。確認すると確かにShiftJISで書かれています。 標準ライブラリで頑張るなら、 import cgi _v, param = cgi.parse_header(f.getheader(‘Content-Type’) or ”) text = f.read().decode(param.get(‘charset’, ‘utf-8’)) とでもするといいでしょうか。 でも、Pythonのurllib.requestの公式ドキュメントの冒頭に”お奨めです”と書いてあるとおり、requestsライブラリを使った方が、自分で頑張るよりずっとずっとお奨めです。 http://docs.python-requests.org/en/master/…(Continue Reading)