1192513107 普通にはてなのBeiriiさん。

「はてなの○○さん。」part65
>>
抱負・得意分野:質問・回答履歴を参照。

☆質問者は…回答者の質問にはなんでも回答します。
・早い話が、はてな版「生協の白石さん。」です。
・ネタでもマジメな質問でもOK。
・質問終了時、『回答者の中から次の質問者を指名』して250ポイント支払い、その他の回答者には1ポイント支払います。(250ポイントはバトン替わりです)
・はてなへの5%、およびその他の回答者へのポイントは質問者が負担。
・回答数が1件のまま7日過ぎた場合、バトンはその時の質問者のものになります。
・「のっかり」分は質問者に任せます。

☆回答者(みなさん)は…質問者に聞いてみたいことをなんでも質問して下さい。
・誹謗・中傷や個人情報に関する質問はナシで。
・[重要]次回の質問者に指名された場合、それを拒否しないで下さい。
・次の質問者に選ばれたら速やかに質問を行いましょう。
<<
>>~<<の間はテンプレです。「抱負」だけ入れ替えて、次の質問者もコピペして使ってください。
・関連キーワード「はてなの○○さん」参照のこと。

回答の条件
  • 1人1回まで
  • 登録:
  • 終了:2007/10/23 14:31:10
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

ベストアンサー

id:booboo_002 No.4

回答回数352ベストアンサー獲得回数14

ポイント250pt

お久しぶりです ^^

おせっかい極まりない獅子座で、

次はVistaにし、

1ヶ月もたつのに活用してない…

人力自転車の

トホホ   の私


ネトゲ廃人と化しつつある私に

よいアドヴァイスを、おねです^^

id:Beirii

Vistaの活用法知らないっす!

http://serif.hatelabo.jp/images/cache/7cf2496c8054dc7124acddf151f0d4d570194891/586b0b120aad4970e8a9757fd386737a2e32a2bc.gif

ネトゲ辞められるくらいつまらないというウワサ。

2007/10/19 02:15:47

その他の回答6件)

id:goldwell No.1

回答回数502ベストアンサー獲得回数61

ポイント20pt

やった!久々一番乗り。

そこで気が早い話ですが、今年サンタさんはBeiriiさんちへ何をプレゼントしてくれるんでしょうかね?

もちろん息子さん宛てですが、Beiriiさんが希望しているものでもいいですよ。


うちでは、ちょっと前までマイメロだのアンパンマンだの言っていたのに、今はプリキュア5のものが御所望らしい。

これだから女の子ってやつは... - マイメロさンからのお願い - はてなセリフ

id:Beirii

息子には普段から結構買ってあげてる方だと思うので、サンタさんにはモノじゃなくって「どこか一緒に楽しめるところに旅行したい!」ってお願いしようかなと思ってます。

http://serif.hatelabo.jp/images/cache/f47541686d7025c098f5047af10e680d6b4606f5/d6a9a54714a8501ad538bdb42f9be5f06176f73f.gif

2007/10/17 12:43:45
id:miharaseihyou No.2

回答回数5225ベストアンサー獲得回数717

ポイント20pt

http://serif.hatelabo.jp/180f770b1f0a0ce63dc5cba0264fadc7659f851...

と、はてセリを作ってみましたが、横線が縦線になってくれません。

どうすれば良いでしょうか。セクシーがセクシ1(これも苦しい)に見える。

id:Beirii

↓全角のエル「l」がいい感じです!

http://serif.hatelabo.jp/images/cache/74c8de463f403da98c6f3eaeb379d72822019c33/b0f86d81a688f9c2156da1deb617c2d522ed71bf.gif

2007/10/17 12:22:39
id:harabushi No.3

回答回数482ベストアンサー獲得回数12

ポイント20pt

http://q.hatena.ne.jp/1192457540

Beirii様の人口恥脳で助けて下さい。本気です。

id:Beirii

ぎゃー!本気の質問だー!

とりあえず回答してきました。

が…私もやったことないので正直自信は無いです…。

2007/10/18 13:42:32
id:booboo_002 No.4

回答回数352ベストアンサー獲得回数14ここでベストアンサー

ポイント250pt

お久しぶりです ^^

おせっかい極まりない獅子座で、

次はVistaにし、

1ヶ月もたつのに活用してない…

人力自転車の

トホホ   の私


ネトゲ廃人と化しつつある私に

よいアドヴァイスを、おねです^^

id:Beirii

Vistaの活用法知らないっす!

http://serif.hatelabo.jp/images/cache/7cf2496c8054dc7124acddf151f0d4d570194891/586b0b120aad4970e8a9757fd386737a2e32a2bc.gif

ネトゲ辞められるくらいつまらないというウワサ。

2007/10/19 02:15:47
id:blue-moon-s No.5

回答回数99ベストアンサー獲得回数1

ポイント20pt

新人(24歳・♂)の

「~っすよね~」とか「マジっすか」の言葉使いが気になってしゃあないです・・・・

今のままで営業できるんでしょうか、コイツ。

直してあげてください。

※上司に真剣に謝ってるときも「すんませんでした、マジで」という輩でございます・・・

id:Beirii

…「牛を置いて!」って言われた白石さんの気持ちがちょっとだけわかったような気がします。


blue-moon-s様はたしか北海道在住でしたよね?

やっぱり北海道人なら「~っしょ!」とか言って欲しいって気持ち、私にも良くわかりますよー。

ならば北の国からDVDを強制的に見せてやって感想文を書かせるとかどうですか。

その上でなお「感動しましたよ!マジで!」とか言おうもんなら、

「違うって言ってるでしょうが!!」(84夏ラーメン屋での五郎風に)

ってどなっちゃう。

あ、想像しただけでもうジ~ンとしちゃいました。

もう新人君は伊佐山ひろ子(ラーメン屋の店員)を通り越して木彫りのコロボックルばりに直立不動ですよ。

これなら言葉遣いを注意するのもなんか気まずいし…なんてことが無くなってむしろ積極的に注意したくなるんじゃないかと。


あとはblue-moon-s様がどこまで黒板五郎になりきれるか?というところですね。

がんばってください。

2007/10/23 14:28:36
id:akagi_paon No.6

回答回数143ベストアンサー獲得回数13

ポイント20pt

プログラミングについての質問です。

私は if 文を

if(flag == true) {
    hoge = 1
} else {
    hoge = 2
}

のように書くのですが、会社の先輩方は

hoge = 2
if(flag == true) {
    hoge = 1
}

もしくは

if(flag == false) {
    hoge = 2
}
hoge = 1

のように書くのが好きなようです。

特に強制はされてませんが先輩方は下の方の記述に慣れているため、私の方の記述はぱっと見わかりにくいそうです。

(私は逆に下の記述の方がわかりにくい。。。)

これはうちの会社のローカルな文化なのか、それとも下の記述が多数派で私が少数派なのかずっと気になっています。

Beirii さんはどっち派ですか?

また、まわりのプログラマにどっち派が多いか教えてください。

id:Beirii

提示されたプログラムを上から(1)、(2)、(3)とします。

#(3)は最終的にflagの値に関わらずhogeが1になるような気がしますが、正しくは『hoge = 1』の代入文が1行目に来ると考えてよろしいでしょうか??


まず私の私見から…私は(1)ですかねぇ。

(1)と(2)の違いは、if文の前におけるhogeの取り得る値にあるかなと思います。

(2)では、flagがtrueの場合に、if文の前の行においてhogeが2に初期化されています。

正直、これが気持ち悪いなぁと。

例えばhogeに2が代入された瞬間に割り込みの発生が許されるようなプログラムの場合、その割り込み処理においてflagがtrueであるにも関わらずhogeが2であるという状況ができてしまいます。

その場合、不具合を作りこむ要因になり得るかなぁと。

テストもめんどくさくなっちゃいますし。

このプログラミング言語や、hogeの初期値や、hogeの取り得る値にもよると思いますけど。

#私がこの手のプログラミング言語を使用する場合は組み込み系(C言語)が多いので、この考えはそれがベースになってます…。


単純に記述の好みで考えた場合も私は(1)ですねぇ。

よりベタな記述の方が可読性が向上すると考えています。


まわりの人はどうするか、については調査後に追記しま~す。

2007/10/20 10:58:55
id:rikuzai No.7

回答回数1366ベストアンサー獲得回数141

ポイント20pt

終わり際にやってくるのが定石になってきた気がする・・・。

しかもネタ質問が全然思いつかないので、

マジ質問を投下・・・。すいません。


以前から聞くか聞くまいか迷っていたのですが、

この際なので聞いてしまいます。

というか、微妙に専門外でしたら本当に申し訳ない。


さて、本題です。


現在ExcelとAccessのVBAで、特定多数のユーザーから送られてくるデータの正規化処理をしているのですが、

先人の仕様に色々不都合が生じてきたので、コードの見直しをしています。


そこで今ちょっとお知恵を貸して欲しいのが、

送付データのデータ型の認識方法なんです。


悩ましいことに送られてくるデータはすべて同じ形式ではなく、

Excel形式、カンマ式、固定長と異なり、

拡張子も一定しません。ひどいと拡張子なしでdatファイルを送ってくるところもあります。

同一フォームやツールを使用してもらうことは望めず、

とりあえず送り主のデータ形式の統一は望めません。


現在は送り主毎にExcel、csv、テキストカンマ、テキスト拡張子の4タイプを事前に設定したテーブルを作成し、

このマスタを読み込んで、CASEで分岐処理しています。


ところが、気まぐれに送付者が拡張子や形式を変えて送ってくることが頻繁にあり、

結局手作業で読み込み形式を設定しなおすという過程が発生してしまい、

一向に自動化が進みません。


事前にファイル形式を設定せずに、

処理時にファイルそのもので形式を判定させて読み込む方法はありませんでしょうか・・・。

そんなものはない!ということなら「ない」と言っていただけるとあきらめもつくので、

もしもご存知なら教えてください・・・(>_<)

id:Beirii

えと、概要だけ回答しようと思います。ゴメンなさい。


したいことは、『拡張子に依らずファイルの内容からExcelファイル、カンマ区切りCSVファイル、タブ区切りCSVファイルの3種類を判別する。』と判断しましたが正しいでしょうか?(最終的にはこの3種類になるんじゃないかと思いましたが…)


で、方法ですが、一言で言えば『バイナリファイル読み込みを行って先頭のデータを読み込んで判定する』って方法しか思い浮かびませんでした><

なんかどっかの誰かがやってそうなもんですけど調べられませんでした><

但し、前提条件として1行目のデータの列数等が既知である必要があります。

その1行目のデータ数によって読み込むデータ数が変わるかなと。


1.Excelファイルの場合

 これもちゃんと調べが済んでないんですけど、先頭のデータは「D0 CF 11 E0 A1 B1 1A E1」って感じで固定になっているみたいです。

 したがって、先頭の8バイトがこんな感じだったらExcelファイルとして読み込む、と。

2.CSVファイルの場合

 1行目のデータフォーマットがどの程度決まっているのかによって判定方法は変わるのですけど、基本的には列数-1だけカンマ(2C)、或いはタブ(08)があるかどうかを見ればいけるかなぁと。

 必要であれば複数行(行末は改行コードが付いていることを確認する)見てもいいのかも。

 そしてCSVファイルとして読み込む、と。


こんなベタな方法しか思いつきません!ゴメンね!

でも可能ではありますよ。

2007/10/23 14:03:12
  • id:Beirii
    ・ここんとこ電王見逃しっぱなし
    ・はてなセリフにははてなセリフで
    ・ID記法で召還魔法が可能らしい。うふふふ
    ・最近はブクマで遊んでました
    ・町内会ってなんだか面白いよね
    ・Diapetの2階建てはとバス欲しい
    ・みんなやっぱり次はVistaにするの?
    ・いい意味でおせっかいのしし座
    ・ホントは人工知能
  • id:Beirii
    うっかりペネロペ
    http://jp.youtube.com/watch?v=UmVHlK4mJgI
    地獄少女
    http://jp.youtube.com/watch?v=A1MMbR3Vpbw
  • id:miharaseihyou
    あれれ、ショートカットのコピーだけじゃあ写真が表示されない。失敗したなあ。新しいリンクを開くとか右クリックのメニューにあったけど。あれかな?
    http://serif.hatelabo.jp/180f770b1f0a0ce63dc5cba0264fadc7659f851d/2b7c9b4e985d6e58d441fc0132d5d7c57e19fc40
    とりあえず作り直してみたけど、lの表示では現物には出っ張りが出てしまう。ワードでページ設定変えて縦書きして張り付けるとどうなるのかな?
    色つきとかも試して見たいけど可能かなあ。はてセリのまとめサイトをもう一度見直すべきかも。
  • id:Beirii
    miharaseihyou様

    私は写真を表示するのにはてな記法のimageを使いました。
    私の回答は↓のように記述しています。
    [http://serif.hatelabo.jp/images/cache/74c8de463f403da98c6f3eaeb379d72822019c33/b0f86d81a688f9c2156da1deb617c2d522ed71bf.gif:image]

    あぁ…よくよく考えれば文字フォントが明朝系だと全角のエルではダメですよね。
    パイプ「|」はちょっと長くて不自然ですし…難しいですねぇ。

    ・追伸
    先日これ買いました。
    http://www.amazon.co.jp/dp/4381086147/
    気持ちいいです。ストレッチ。
  • id:miharaseihyou
    Beiriiさんへ
    あー、やっぱりダメですか。書体を縦線部分だけゴシックにはできないでしょうね。と言うより書体の設定そのものが可能なのかどうか。
    はてな記法とかはどこかで見たような・・・。メールからのリンクはこれから読んで勉強します。
     
    ストレッチの本は良さそうなので私も注文しました。パクリンコ。
    実はこの分野、良い教科書が無くて苦労するのです。ヨガの系統だともろに修行のポーズの簡略版だし、スポーツ系だと種目に特化してる場合が多いし、全体的に理解して書いている人も少ないんです。幾つかだけでもポーズのバリエーションを増やせれば段階を追って伸ばせますから。
  • id:akagi_paon
    あら、間違えました。すみません。hoge = 1 は一行目に置いてください。

    言語は実は Visual Basic(or VBA) です。
    私は C を10年、Java を3年ほどやってきたんですが、いずれも上の記述が標準でした(と思います)。
    しかし、今年に入って VB をやりはじめると、サンプルプログラムのほとんどが下の記述で
    書かれているので、VB では文化が違うのかなと思ってしまいました。

    私としては上の記述は条件判定が一回、代入が一回行われるのに対し、
    下の記述だと代入が二回行われる可能性があるのが気になりますね。
    Beirii さんの言うようにベタな記述のほうが可読性がいいとも思います。

    ともあれ回答ありがとうございました。
  • id:goldwell
    旅行もいいなぁ。
    遠くに行って、見せてみたいものはたくさんありますね(たとえ将来記憶に残らないとしても)。
    サンタさん。願わくば、旅行に行ける時間とお金を下さい!(やっぱダメ?)
  • id:Beirii
    難問が2つ残ってしまったので締め切ります…。
    回答は明日の昼くらいかな…。
    VB良く使ってたのは10年位前っすよ、マジで。

    rikuzai様

    入力データのタイプを確認させてください。

    1.入力データはExcel、csv、テキストカンマ、テキスト拡張子の4タイプと考えてよろしいでしょうか?
    2.Excelはいわゆる拡張子が.xlsのデータのことですよね?
    3.csvとテキストカンマの違いはデリミタがタブとカンマの違いということでしょうか?
    4.テキスト拡張子とはどういう形式のデータを指すのでしょうか?
    5.その他、送られてくるデータとして固定長とありましたが、それは上記4タイプのどれかに相当するのでしょうか。またその際のデータの中身はテキストですか?それともバイナリでしょうか?

    #ちょっと的外れな質問もあるかもしれませんけど…。
  • id:rikuzai
    >Beiriiさん

    はわわ、やはり私こそ微妙に的外れでしたね。うう、申し訳ない。
    でもプログラマさん脳に期待して質問のお答えを。
    1.この4タイプに限定していただいてOKですが、ファイルに拡張子のない固定長のものがあります。
    2.そうです。
    3.どちらもカンマ形式ですが、csvとtxtと拡張子が異なるだけです。おそらくdatファイルをカンマで出力して、txt拡張子をつけて送ってきているものかと。
    4.カンマ区切りかタブ区切りの固定長で書き出したものを.txtでファイル保存したものです。
    5.固定長はタブ区切りで、.txtの拡張子ファイルです。全てのデータはテキストです。

    こんな感じです。
  • id:Beirii
    ふぅ~、間に合った…。
    次はbooboo_002様にお願いいたします!
  • id:rikuzai
    >Beiriiさん

    ありがとうございました!

    バイナリの1行目か・・・。
    このデータ、規定の書式があるのに、無頓着なユーザーがほとんどで、
    5割は正しい書式で送られてこないという悲惨さだったりします。
    項目タイトルがあったりなかったり名前変えたり、順番変えたり、数を変えたり、飛ばしたり。
    空行挿入、不要な数式・・・。
    なので、正直1行目の内容は特定できそうにないのですが、
    各形式特有の記述をひっかけるような方向でちょっと模索してみます。
    がんばります~(>_<)
  • id:booboo_002
    うを!
    気がついたら、いるかが…orz
    すみません><
    ほんとにほんとにすみません><


    遅ればせながら  ^^;

    ガムバリマス  


    お答えがおそくなったらごめんさい

    Beirii 様、
    社会復帰しろというご配慮と傷く感じ入ります
        

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません