Bagaimana cara mengimpor daftar file dan atributnya, dari folder ke excel menggunakan windows explorer?

3

Saya menggunakan windows 7 dan memiliki folder yang berisi beberapa ratus gambar. Beberapa gambar memiliki nilai Lebar dan Tinggi dalam piksel yang lebih rendah. Saya mencari gambar yang memiliki beberapa produk kecil dari dua bidang ini. Tidak ada bidang yang meringkas ini dalam daftar bidang.

Image file list with width and height columns

Saya ingin melacak file-file itu dengan mengekspor daftar file dan atribut lebar dan tinggi ke excel spreadsheet.

Apakah ada dan lurus ke depan melakukannya? Jika tidak, apakah ada solusi?

EranGeo
sumber
Mengapa tidak mengurutkan daftar pada lebar atau tinggi?
DavidPostill
Karena saya ingin mengurutkannya berdasarkan produk dari dua kolom ini dan tidak ada satu pun di daftar bidang opsional untuk ditampilkan. Oleh karena itu, ada opsi bahwa beberapa gambar akan memiliki sejumlah kecil piksel dalam bidang lebarnya tetapi sejumlah besar piksel dalam bidang tinggi dan sebaliknya. Saya akan memodifikasi pertanyaan saya untuk membuatnya lebih jelas.
EranGeo
Ah. Sudahlah. Lihat jawaban saya.
DavidPostill
Jawaban diperbarui untuk menghitung area dan mengurutkan hasil.
DavidPostill

Jawaban:

2

Gunakan skrip PowerShell berikut dan kemudian buka sorted.csv dengan Excel, dan melakukan manipulasi lebih lanjut sesuai kebutuhan.

test.ps1:

$image = New-Object -ComObject Wia.ImageFile
echo ("Name,Width,Height,Area") > test.csv
dir *.png | foreach {
  $fname =$_.FullName
  $image.LoadFile($fname)
  $area=$image.Width*$image.Height
  echo ('"'+$fname+'",'+$image.Width+","+$image.Height+","+$area)
} >> test.csv
# sort the csv by area (ascending)
Import-Csv test.csv | sort Area | Export-Csv -Path sorted.csv -NoTypeInformation

Catatan:

  • Menggunakan Wia.ImageFile Objek com.
  • test.csv berisi output yang tidak disortir
  • sorted.csv berisi output yang diurutkan (menaik) berdasarkan "Area" ( Width * Height )

Contoh output:

PS F:\test> dir *.png


    Directory: F:\test


Mode                LastWriteTime         Length Name
----                -------------         ------ ----
-a----       01/09/2015     11:45          27156 1.png
-a----       01/09/2015     11:46          17900 2.png
-a----       21/05/2015     14:40         114304 3.png
-a----       15/04/2015     12:56         429394 4.png


PS F:\test> .\test.ps1
PS F:\test> type test.csv
Name,Width,Height,Area
"F:\test\1.png",869,532,462308
"F:\test\2.png",870,344,299280
"F:\test\3.png",328,328,107584
"F:\test\4.png",546,494,269724
PS F:\test> type sorted.csv
"Name","Width","Height","Area"
"F:\test\3.png","328","328","107584"
"F:\test\4.png","546","494","269724"
"F:\test\2.png","870","344","299280"
"F:\test\1.png","869","532","462308"

Bacaan lebih lanjut

DavidPostill
sumber