<p>我正在用python为串行端口创建一个嗅探器,但是在windows中创建CSV文件时遇到了一个问题。为了避免windows和linux之间不兼容的可能性,我在某一点上拆分了我的程序。它在linux上运行得非常好(在32和64字节上进行测试)。在</p>
<pre><code>def createNewFiles(self):
# Nons allons vérifier l'existance du dossier Sniffer_Serie_Result et le créer si besoin
# De même pour le fichier csv
if (os.name == "nt"): # pour windows
self.userPath = os.getenv('HOME') or os.getenv('USERPROFILE')
self.folderPath= os.path.abspath(self.userPath + "\\Sniffer_Serie_Result")
#exist_ok=True ==> cree le dossier si il n'existe pas
os.makedirs(self.folderPath,exist_ok=True)
self.timestampWithSec= self.timestampWithoutMilli() # utilisé dans les noms de fichier
self.filePathRequest= os.path.abspath(self.folderPath + "\\Request_at_" + self.timestampWithSec + ".csv")
self.filePathResponse= os.path.abspath(self.folderPath + "\\Response_at_" + self.timestampWithSec + ".csv")
self.filePathOverall = os.path.abspath(self.folderPath + "\\Overall_result_at_" + self.timestampWithSec + ".csv")
with open(self.filePathRequest, 'w') as f:
writer = csv.writer(f)
writer.writerow(["Kind of message","Timestamp","Message Hexa","Message ASCII"])
with open(self.filePathResponse, 'w') as f:
writer = csv.writer(f)
writer.writerow(["Kind of message","Timestamp","Message Hexa","Message ASCII"])
</code></pre>
<p>创建文件夹嗅探器序列结果没有错误
因此,此代码首先返回以下错误:</p>
<p>IOError:[Errno 22]无效参数:“C:\Documents and Settings\stagiaire\Sniffer_Serie_Result\Request_at_….(实际日期和时间).csv”</p>
<p>我尝试了很多像原始弦一样的弦,但没有任何效果。在</p>
<p>注意:我的测试用的是XP,这也需要在7上运行</p>
<p>我希望你能帮助我。
谢谢你的帮助!在</p>
<p>我不能在星期四之前提供更多信息(家里暂时没有互联网)</p>