前提・実現したい事
PowerShell で、「現在の時刻」を取得してCSV出力を考えております。
文字コードは、『Unicode』です。
発生している問題・Error Message
コンソール上は、正しく表示されているのにCSV形式で出力すると入力されているのが文字数です。
(Length が A2セル。文字数 が A3セルに表示されています)
文字コードを、"default"に指定すると、1行目の【#TYPE System.String】が消えました。
出来れば、1行目の文字も消したいです。(表示させない)
実際のソースコード
PowerShell
1# 変数 2$filename = "C:\test\test.csv" 3$Encode = "Unicode" 4 5# Function実行 6Log 7 8# ログ出力 Function 9Function Log($LogString) { 10 11 # 現在の時刻取得 12 $Now = Get-Date 13 14 # 時刻を付加(YYYY-MM-DD HH:MM:SS.MMM $LogString) 15 $Log = "{0:0000}-{1:00}-{2:00} " -f $Now.Year, $Now.Month, $Now.Day 16 $Log += "{0:00}:{1:00}:{2:00}.{3:000} " -f $Now.Hour, $Now.Minute, $Now.Second, $Now.Millisecond 17 18 # ログ出力 19 $Log | Export-Csv $filename -Encoding $Encode -append 20}
試した事
PowerShell
1# 現在の時刻取得 2$Now = Get-Date -Format "yyyy-MM-dd T HH:mm:ss"
フォーマットで指定しても、上手く行きませんでした。
どなたか分かる方いれば、よろしくお願い致します。
補足情報(言語/FW/ツール等のVersion)
・Window 7
・PowerShell Ver 5.0
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。