2013-09-05 3 views
7

Haskellでディスクドライブを一覧表示するにはどうすればよいですか?私はWindows上でディスクドライブ文字を取得し、Linuxでは "/"だけ取得したいと考えています。出来ますか?私はどこでもそれを見つけることができませんでした。HaskellはWindowsでドライブを一覧表示します

+0

['GetLogicalDriveStrings'](http://msdn.microsoft.com/en-us/library/aa364975%28VS.85%29.aspx)しかし、それは['System.Win32.File'](http://hackage.haskell.org/packages/archive/Win32/2.2.2.0/doc/html/System-Win32-File.html)で囲まれていません。 –

+0

Win32なしでそれを行う方法はありますか?私は窓でしかコンパイルすることができず、移植性が失われるので、私は尋ねる。 – remdezx

+0

私にはわからないが、私はそれを疑う。しかし、あなたは 'CPP'プラグマを使うことができます。 –

答えて

4
import System.Process 
c = do 
    res <- readProcess "wmic" ["logicaldisk","get","caption"] "" 
    --print res 
    -- clean up the output 
    print $ init $ map (take 2) $ drop 1(lines res) 
+0

これは私が探していたものです!ありがとうございました! – remdezx

1

あなたはすべての26個の可能なドライブ文字を列挙し、それらがSystem.DirectoryからdoesDirectoryExistを使用して存在している場合を見てみてください。私はと思っています...

+0

win32ラッパーを作るよりもはるかに良いようです、ありがとう! – remdezx