通过网络逐行发送大文本文件

时间:2014-09-03 19:58:56

标签: python twisted

我使用twisted和python通过网络发送一些大文本文件,我想使用UDP和多播,最好的解决方案是什么,我需要示例代码因为我已经很困惑,当我尝试要做到这一点我从python中得到错误24,它说太多打开的文件,你能帮我解决这个问题吗?

这是我的代码的一部分:

    if (options.upt != None):
        print "UPGRADE is initiating"
        sourceFile = open(options.upt, "r")
        reactor.listenMulticast(1888, UpgradeReciever("Control Listener"), listenMultiple=True)
        #with open(options.upt) as sourceFile:
        for line in sourceFile:
            upgradeSenderObj = UpgradeSender(line, "224.0.0.8", 1888)
            reactor.listenMulticast(1888, upgradeSenderObj, listenMultiple=True)
        reactor.run()

我还尝试读取整个文件并放入列表,然后通过扭曲调用列表的每个元素(实际上是我的文件的行),但仍然遇到类似的问题,这是我的更新代码:< / p>

    if (options.upt != None):
        print "UPGRADE is initiating"
        sourceFile = open(options.upt, "r")
        reactor.listenMulticast(1888, UpgradeReciever("Control Listener"), listenMultiple=True)

        dataContainer = list(sourceFile)
        print dataContainer
        for i in range(len(dataContainer)):
            upgradeSenderObj = UpgradeSender(dataContainer[i], "224.0.0.8", 1888)
            reactor.listenMulticast(1888, upgradeSenderObj, listenMultiple=True)
        reactor.run()

0 个答案:

没有答案