如何将raw_input()转换为目录?

时间:2010-06-12 11:53:03

标签: ironpython

我刚拿起IronPython并且我一直试图让这个IronPython脚本继续运行,但我一直试图从raw_input获取Path输入作为目录路径。第一个代码块是我正在处理的破坏代码。

import System
from System import *
from System.IO import *
from System.Diagnostics import *

inputDirectory = raw_input("Enter Input Directory's full path [eg. c:\\vid\\]: ")
print ("In: "+inputDirectory)
outputDirectory = inputDirectory +"ipod\\"
print ("Out: "+outputDirectory)
#create the default output directory

for s in DirectoryInfo(inputDirectory).GetFiles("*.avi"): 
print s.FullName
    arg = String.Format('-i "{0}" -t 1 -c 1 -o "{1}" --preset="iPod"' , s.FullName, outputDirectory + s.Name.Replace(".avi", ".mp4"))
    print arg
    proc = Process.Start("C:\\Program Files\\Handbrake\\HandBrakeCLI.exe", arg) #path to handbrake goes here
    proc.WaitForExit()

以下代码块是我目前正在处理的内容。

import System
from System import *
from System.IO import *
from System.Diagnostics import *

for s in DirectoryInfo("F:\\Tomorrow\\").GetFiles("*.avi"): 
    arg = String.Format('-i "{0}" -t 1 -c 1 -o "{1}" --preset="iPod"' , s.FullName, "F:\\Tomorrow\\ipod\\" + s.Name.Replace(".avi", ".mp4"))
    print arg
    proc = Process.Start("C:\\Program Files\\Handbrake\\HandBrakeCLI.exe", arg) #path to handbrake goes here
    proc.WaitForExit()

PS:以上工作代码的信用额去jcooney.net的Joseph

1 个答案:

答案 0 :(得分:2)

您是否只是在寻找“Directory.CreateDirectory(outputDirectory)”,您在哪里发表评论?如果我添加并运行它(减去进程产生),我得到:

Enter Input Directory's full path [eg. c:\vid\]: C:\Users\Dino\ 
In: C:\Users\Dino\ 
Out: C:\Users\Dino\ipod\ 
C:\Users\Dino\x.avi
-i "C:\Users\Dino\x.avi" -t 1 -c 1 -o "C:\Users\Dino\ipod\x.mp4" --preset="iPod"

但我认为你真的想要查看具有Path.Combine的Path类,你可以使用它而不是仅仅连接字符串。