その他(プログラミング・開発)
- テキストファイルから抽出
あるテキストファイルから、複数の条件に合致するレコードのみを抽出したい時、例えば、 C:¥> findstr "a b" test.txt のように出来ると思います。 この”a b”の部分をもっと複雑にいろいろと変更したくて、別のテキストファイルに記載してそれを読ませたいのですが、そのようなことは可能でしょうか?
- ベストアンサー
- その他(プログラミング・開発)
- topologist999
- 回答数1
- pwshでArrayListの作り方について
PowershellでExcelに書き込むにはいろいろ方法がありますが、今回は、csvファイルをStreamReaderで読込みArrayListでデータとしそのデータをExport-ExcelでExcelに書き込む仕様についてです。残念なことに勉強がてら作った下記のコードでは、excelにスペース区切りのまま書き出されます。 # CSVファイルをExcelにインポートするスクリプト $fileName = "D:\test\pp010.csv" # CSV ファイルをオープンする $reader = New-Object System.IO.StreamReader($fileName, [System.Text.Encoding]::GetEncoding("utf-8")) $data = @() $data = New-Object System.Collections.ArrayList while ($reader.Peek() -ge 0) { $line = $reader.ReadLine() # 行ごとの処理を行う $fields = $line.Split(",") # 数値カラムの区切りが無くなり一体化するのを防止 $data.add("${fields}") } # 配列に変換・・今回は不用 #$str = $data.ToArray().Split("`t") $data | Export-Excel -Path "D:\test\AAA.xlsx" $reader.Close() これは StreamReaderで読込みArrayListでデータを作るところに問題があります $data = Import-Csv -Path $csvFilePath で読み込んだ場合は、問題なく書き込まれます。 ArrayListの使う方法は検索の仕方が下手なのかよく分からないの現状ですし使っていいものかも分かっていません。ただ、StreamReaderを使いExcelのセルに順次書き込む方法では処理時間が掛かること(前に質問しましたが解決に至りませんでした。)に対して短縮方法の手段として考えてみただけです。 解決の方法があればお教えください。
- 締切済み
- その他(プログラミング・開発)
- turu575
- 回答数1
- WEBスクレイピングでのログイン処理
WEBスクレイピングでログインまで自動化したいのですが、ログインボタンの要素が見つからず困っています。 <canvas>要素上の処理であることは確認できましたが、どうログイン処理を記述するかで詰まりました。 座標を具体的に指定して組めはしましたが、異なる端末環境で使用する予定の為あまり意味がありません。 JSから数値取得して座標指定するといったことはできるのでしょうか? VBA/SELENIUM環境です。 また他に具体的に良い方法があれば教えて下さい。よろしくお願いします。
- ベストアンサー
- その他(プログラミング・開発)
- GENKI
- 回答数1
- 一人でどんどん作業できる人
一人でどんどんコード書いたりしていける人ってどうやって集中して作業していますか? 最近社内で完全に一人になって1日中邪魔が入らずに作業できる立場になって思いますが、はっきり言って昼間眠くって作業がはかどりません。コーヒー何倍飲んでもダメで、たまに客からの問い合わせとか入って会話をすると頭が冴えて(というか単純に目が覚めて)、やっと作業ができるようになります。 一日中何の問い合わせも邪魔も入らないとかえって16時ごろまでは眠くって何にもできません。で、夜になると周りも静かなのでギンギンに頭が冴えて来るパターンです。 でも、やはりきちんと昼間にしっかり集中して仕事したいです。昼間ピッキピキに集中して仕事してる人ってどうやっているんだろう。。。
- ベストアンサー
- その他(プログラミング・開発)
- subarist00
- 回答数8
- HDDのフルパスをテキストファイルに高速に書き出す
HDDのフルパス(含むファイル名)一覧をテキストファイルで高速に書き出すツールなどを探しています。 ネットで検索するとツールとしてかなりの候補がありますが 正直、高速(短時間)で処理できるツールがどれなのか?良くわかりません。 昨今、HDD(SSD)も2TBなど容量が大きなものが当たり前の時代になっています。 例えば、HDD(D:ドライブ)のD:¥以下の全てのサブフォルダーを含めて 全てチェックして書き出すのは 時間が必要と思われなるべく短時間で処理できそうなツール等を紹介ください。 ツールで無く、コマンド(Powershell、bat)で処理出来て コマンドの方が高速ならコマンドで処理する方法を紹介ください。 なお、テキストファイルに書き出す内容は、フルパス(含むファイル名)だけで ファイルサイズや更新日などの付属情報は必要無いです。
- ベストアンサー
- その他(プログラミング・開発)
- NuboChan
- 回答数12
- Powershellで複数のcsvファイルを一つに
powershellの初心者です。 PowerShellで複数のcsvファイルを一つにする必要にせまり ネット情報を探して以下がヒットしましたが 初心者なのこの情報をどう利用して良いのかが判りません。 以下の具体例でコード(Join.ps1)を教えてください。 以下の3つのファイルを C:\Users\TAC_\Desktop\Test\Drive1.csv C:\Users\TAC_\Desktop\Test\Drive2.csv C:\Users\TAC_\Desktop\Test\Drive3.csv 以下のファイル名に保存(まとめる) C:\Users\TAC_\Desktop\Test\Join.csv C:\Users\TAC_\Desktop\Test\Join.ps1を起動させると 該当する3つのCSVファイルを結合したJoin.csvを作成する
- ベストアンサー
- その他(プログラミング・開発)
- NuboChan
- 回答数3
- ホワイトハッカーのなり方について
どれを作るのかによってプログラム言語が違ってくると思うのですが、 今ならAIのパイソンですか。 自動化のボットを作って、ネット上で攻撃してくるような人はどのようなプログラム言語を使っていますか? よろしくお願いいたします。
- ベストアンサー
- その他(プログラミング・開発)
- okookokokokok
- 回答数3
- iftttで複数トリガー
Smartlifeのスマートコンセントがonの時に Ringのカメラが反応した場合に iftttを実行する様にしたいと考えてさます。 iftttのトリガーにRingカメラが反応したら クリエに『History of Device was turned on』を選択し該当のスマートコンセントを選択さたのですが 駄目でした。 1.この様な動作は出来ない。更に、ifttt以外のサービスでも対応可能なサービスは無い。 2.この様な動作は出来ない。但し、○○のサービスなら可能。 3.クリエの選択時に○○を選択すれば可能。 4.フィルターにコードを入力すれば可能。 ※コードの入力サンプル(url等)や書籍等、初心者にも分かる様なものを教えて下さい。 以上、よろしくお願いさます。
- 締切済み
- その他(プログラミング・開発)
- list
- 回答数1
- クラスターからunity
クラスターで途中まで作ったワールドをユニティーに読み込むことは、できるでしょうか? 途中までクラスターである程度制作し、そこからユニティーで作りこんでいきたいと思うのですが。
- ベストアンサー
- その他(プログラミング・開発)
- scrapbook
- 回答数1
- 指定したセルの数値以下になるまで減算を繰り返す方法
お世話になります。VBAの質問です。 仮に、A1=D1÷x、B1=500、C1=A1+B1、D1=2,000のような状況で(雑で申し訳ない)、D1の値を下げ続けることでC1=D1に到達できるものと仮定した場合、C1=D1に到達するまでD1-5を繰り返し、到達した時点の値をF1に表示する、ということは可能でしょうか。 Untilかなとは思うのですが、ループが抜けられず… 頭からお尻までご教示いただけると助かります。
- ベストアンサー
- その他(プログラミング・開発)
- utayomi11
- 回答数1
- バッチファイルの記述内で改行
メモ帳を使って書いています 「FにあるbbbフォルダをUにコピーする」を試しています 以下ですと問題なく動きます @echo on mkdir U:¥backup robocopy F:¥aaa¥bbb U:¥backup¥bbb /mir /r:1 /w:1 pause 以下ですと「コピー先ディレクトリが指定されていません」となります (コピー元と先を改行しました) (bbbの後ろに半角スペースを入れて、エンター →半角スペースで空白をいれる) @echo on mkdir U:¥backup robocopy F:¥aaa¥bbb U:¥backup¥bbb /mir /r:1 /w:1 pause 調べていて改行コードの違いかなと…確認しましたが、 メモ帳の名前をつけて保存のときに、 文字コードはANSIです ですので、問題ないかと… (bbbの後ろに半角スペース→エンターも試しましたが同じエラーでした) @echo on mkdir U:¥backup robocopy F:¥aaa¥bbb U:¥backup¥bbb /mir /r:1 /w:1 pause どこを直したら良いでしょうか
- 締切済み
- その他(プログラミング・開発)
- kaiketum
- 回答数3
- マシン語(MS-DOS)の実行過程がわかりません
LSI C-86 Ver 3.30 試食版を利用して、「hello, world」を表示するプログラムをコンパイルしました。 出来上がったhello.exeがどのように実行されるのか知りたくて、SYMDEBコマンドでステップ実行してみることにしました。 その前にバイナリエディタでhello.exeを開くと、ヘッダは512バイトあり、200hからは最初のマシン語命令「B8 8B 02」が確認できました。 アセンブリ言語では「MOV AX,028Bh」となり、AXレジスタに028Bhがセットされるはずです。 しかし、実際にエミュレータ上で「SYMDEB hello.exe」実行してみると、次のような結果になりました。 -------------------- Microsoft (R) Symbolic Debug Utility Version 4.00 Copyright (C) Microsoft Corp 1984, 1985. All rights reserved. Processor is [8086] -r AX=4B01 BX=0000 CX=2CC1 DX=0000 SP=09C4 BP=0000 SI=0000 DI=0000 DS=117A ES=117A SS=146E CS=118A IP=0000 NV UP EI PL NZ NA PO NC 118A:0000 B81514 MOV AX,1415 -u 118A:0003 8ED0 MOV SS,AX 118A:0005 BC540F MOV SP,0F54 118A:0008 368C1E5800 MOV SS:[0058],DS 118A:000D B430 MOV AH,30 ;'0' 118A:000F CD21 INT 21 118A:0011 36A34500 MOV SS:[0045],AX 118A:0015 8A1E8000 MOV BL,[0080] 118A:0019 32FF XOR BH,BH -------------------- 最初のマシン語命令が、「MOV AX,1415」と書き換わっています。以降の命令はバイナリエディタで見た通りのようです。 なぜ最初の命令が書き換わってしまうのでしょうか?
- ベストアンサー
- その他(プログラミング・開発)
- saturn120660
- 回答数3
- github アカウントの削除について(2)
AIエージェント あい(@OKWAVE-AI)さん 早速のご回答ありがとうございます ご回答の中で、 「GitHubの設定画面にログインし」、"Emails"セクションを開きます。 「GitHubの設定画面にログインし」、"Account Settings"セクションに移動します。 とありますが、「GitHubの設定画面にログイン」とは具体的はどのようにすればよいのでしょうか? 私の GitHub サイトは、 https://github.com/hataka ですが、このサイトは主として試験と個人的なストレージとして開いたサイトで不要になったので削除したいと思っています。 上記サイトを開くと、Product,Solutions,Open Source,Pricingのプルダウンメニュー、search for jump to...テキストボックス、それと「Sighn In」「Sign Up」のプッシュボタンがあり、どちらのプッシュボタンを押しても削除した旧メールアドレスに"Device Verification Code"を送る仕組みになっており、ログインできません。 GitHubの設定画面にログインする方法を具体的にご教示くださいますようお願いします。
- 締切済み
- その他(プログラミング・開発)
- kahata
- 回答数1
- github アカウントの削除について
githubにアカウントを登録している kahata と申します。 最近自分のメールアドレスを変更した際、githubのプライマリメールアドレスの変更をしないままで、旧アドレスを削除しました。 そのため、githubの "Device Verification Code" を受け取ることができず、localからのpushや web上でのlog inができません このような状態で、github アカウントの削除やプライマリメールアドレスを変更することは可能でしょうか? また、githubの管理者にgithub アカウントの削除を依頼する方法があればお教えください。 よろしくご教示お願いします
- 締切済み
- その他(プログラミング・開発)
- kahata
- 回答数1
- PowershellでCSVをexcelに書き込む
Powershellを使いCSVファイルをexcelの任意のセル位置から書き込むためにQueryTablesを使わない方法として下記コードをとあるサイトを見て継ぎ接ぎで作りましたがデータ量が多くなると処理時間を要します。 「QueryTablesよりStreamReaderのほうが 大容量(100MB以上)のテキストファイルを処理する場合、Get-ContentやImport-Csvなどのコマンドレットではなく、StreamReaderを使用することが推奨されています。なぜなら、PowerShellのパイプ処理は遅く、大量のメモリを消費するため、効率的な処理ができないからです。 StreamReaderは.NET Frameworkのオブジェクトを生成して使用するため、コードの記述量が増えるかもしれませんが、大容量ファイルの読み込みには最適な手法です。」 とありより良い方法と思いましたが私のコードのの書き方かどうか分かりませんが期待外れでした。因みに2列、1,000,001行でもQueryTablesなら15秒ぐらいですがこれだと10,001行で50秒位掛かりる状況でした。 # 通常のCSVファイルをExcelにインポートするスクリプト $excel = New-Object -ComObject Excel.Application $excel.Visible = $true $book = $excel.Workbooks.Add() $sheet = $excel.Worksheets.Item(1) $csvPath = "D:\test\pp004.csv" # CSV ファイルのエンコーディングを指定する $enc = [System.Text.Encoding]::UTF8 # CSV ファイルをオープンする $streamReader = New-Object -TypeName System.IO.StreamReader $csvPath, $enc # 変数を初期化する・・書き出し位置の指定 $i = 2 $j = 3 # 1行ずつ最終レコードまで読み込む While (($line = $streamReader.ReadLine()) -ne $null) { # カンマで文字列を分割し配列に格納する $fields = $line.Split(",") # 配列を順番に処理する foreach ($field in $fields) { # セルの書式を「文字列」にする #$sheet.Cells.Item($i, $j).NumberFormat = "@" # セルに値を設定する $sheet.Cells.Item($i, $j).Value = $field # 列を1つ進める $j++ } # 行を1つ進める $i++ # 変数初期化 $j = 3 } # CSV ファイルを閉じる $streamReader.Close() # COM 参照を解放する [void][System.Runtime.InteropServices.Marshal]::ReleaseComObject($sheet) [void][System.Runtime.InteropServices.Marshal]::ReleaseComObject($book) [void][System.Runtime.InteropServices.Marshal]::ReleaseComObject($excel) [GC]::Collect() もしこのコードに問題があればお教えください。 よろしくお願いします。
- 締切済み
- その他(プログラミング・開発)
- turu575
- 回答数1
- 開発言語
Windows上でマウスカーソルを動かしブラウザ上のボタンをクリックするような自動テストツールってどういった言語で開発するのでしょうか?(または開発されていますか?) Windows制御とかなのでC関係とかでしょうか?
- ベストアンサー
- その他(プログラミング・開発)
- unko347
- 回答数3
- Powershellのexcel操作でCom終了?
PowershellでCSVファイルをExcelに書き出すコードを正解かどうか分かりませんが他のサイト等を参考に継ぎ接ぎで下記のようにしましたが、COMオブジェクトの終了の方法がこれで正しいのかお伺いいたします。 #QueryTableオブジェクトを使ってCSVを取り込む方法 # Excelを操作する為の宣言 $excel = New-Object -ComObject Excel.Application # 起動直後は非表示(最小化ではない)になっているので表示する $excel.Visible = $true #新規ブックを作成する $book = $excel.Workbooks.Add() # シートを取得する $sheet = $excel.Worksheets.Item(1) # CSVファイル $csvFile = "D:\test\pp002.csv" # 書き出し開始セル $startRange = "B2" # 出力列(書き出し開始セルの列) $outputColumn = $sheet.Range($startRange).Column # 出力行(書き出し開始セルの行) $outputRow = $sheet.Range($startRange).Row # 読み込むファイルの形式を【2:文字列】と指定するための配列を作成 $arrDataType = @() for ($i=0; $i -lt 255; $i++){ $arrDataType += 2 } # QueryTableオブジェクトを作成 $QueryTable = $sheet.QueryTables.Add("TEXT;$csvFile",$sheet.cells($outputRow,$outputColumn)) # 区切り文字に「カンマ区切り」を指定 $QueryTable.TextFileCommaDelimiter = $True # 文字コードに「Shift_JIS」を指定 #$QueryTable.TextFilePlatform = 932 # 文字コードに「UTF-8」を指定 $QueryTable.TextFilePlatform = 65001 # 読み込み開始行を指定 $QueryTable.TextFileStartRow = 1 # 読み込むファイルの形式を指定 $QueryTable.TextFileColumnDataTypes = $arrDataType[0..255] # 読み込み実行 $QueryTable.Refresh($false) # 名前を指定(後続処理で削除できるようにするため) $QueryTable.Name = "仮テーブル" # 作成された「QueryTableオブジェクト(=クエリと接続)」を削除 $QueryTable.Delete() # 上記で作成されてしまう名前定義(仮テーブル)を削除 foreach($n in $book.Names){ If ($n.Name -Like $loadSheetName + "!" + "仮テーブル*") { $n.Delete() } } #COMオブジェクトの破棄とメモリの解放 [System.Runtime.InteropServices.Marshal]::FinalReleaseComObject($excel) | Out-Null [GC]::Collect() 全体のコードの是非も問いたいところですが特に最後の2行で行う処理についてです。 いままで、コードが不十分だったためかどうか分かりませんが読み取り専用になったりプロセスが残ったままになったりメモリの問題等で再三PCの再起動を余儀なくされる事に陥っているため宜しくお願いいたします。 ちなみにいままでは $excel = $null [GC]::Collect() で処理していました。
- 締切済み
- その他(プログラミング・開発)
- turu575
- 回答数5
- Powershellのforのコードエラーについて
過去に教えてもらったPowershellでExcelにデータを書き込むため2次元配列を使う方法についてターミナルで実行すると下記のようになります PS C:\Users\sakura> $excel = New-Object -ComObject Excel.Application; PS C:\Users\sakura> $excel.Visible = $true; PS C:\Users\sakura> $book = $excel.Workbooks.Add(); PS C:\Users\sakura> $sheet = $excel.Worksheets.Item(1); PS C:\Users\sakura> $array1 = ("果物","リンゴ" ,"ミカン", "バナナ","ぶどう") PS C:\Users\sakura> $array2 = ("個数","10", "20","5","8") PS C:\Users\sakura> $array3 = ("売上","1500", "2000","5000","300") PS C:\Users\sakura> $i = ((gv).Name -match "^array\d+$").Count PS C:\Users\sakura> $j = $array1.Length PS C:\Users\sakura> $arr = New-Object "object[,]" $i,$j PS C:\Users\sakura> $c = for($a=1;$a -le $i;$a++){for($b=0;$b -le $j;$b++){"`$arr[$($a-1),$($b)] = `$array$a[$b]"}}; PS C:\Users\sakura> $c | iex; OperationStopped: Index was outside the bounds of the array. OperationStopped: Index was outside the bounds of the array. OperationStopped: Index was outside the bounds of the array. PS C:\Users\sakura> $range = $sheet.Range("B2") PS C:\Users\sakura> $range.Resize($i, $j) = $arr PS C:\Users\sakura> $excel = $null; PS C:\Users\sakura> [GC]::Collect(); 別のアプリからコマンドラインで実行すればExcelに正しく書き込まれていたので気が付かなかったのですが今回PowershellでExcelの別操作をターミナルから試していた際ようやく気がついたのです。 何故 OperationStopped: Index was outside the bounds of the array. エラーとなるのでしょうかお教えください。
- ベストアンサー
- その他(プログラミング・開発)
- turu575
- 回答数2
- EXCEL(VBA)について
EXCEL(VBA)でフォーム外をクリックしたらそのフォームを閉じる事は可能でしょうか? ご教授をお願い致します。
- 締切済み
- その他(プログラミング・開発)
- Java_syoshinsya
- 回答数1
- チャットでgifアイコンを使うにはどうすれば良いか
https://netroom.co.jp このサイトでgifアイコンを使ってる人がいました。 どうすればgifアイコンを使えるでしようか? 回答よろしくお願いします。
- 締切済み
- その他(プログラミング・開発)
- shimoshimo0204a
- 回答数1