• 切换目录查询目录 tcp


    服务器
    
    import socket
    import os
    import json
    sk = socket.socket()
    
    sk.bind(('127.0.0.1',8080))
    sk.listen()
    conn,addr = sk.accept()
    
    def show_dir(conn,path):
        return os.listdir(path=path)
    
    def return_res(conn,current_path):
        res = show_dir(conn,current_path)
        show_res = '--'.join(res)
        conn.send(show_res.encode('utf-8'))
    
    abs_path = conn.recv(1024).decode('utf-8')
    current_path = abs_path
    return_res(conn,current_path)
    
    while 1:
        dic_str = conn.recv(1024).decode('utf-8')
        dic = json.loads(dic_str)
        if dic['opt'] == 'cd':
            current_path = current_path + '/' + dic['filename']
            if os.path.isdir(current_path):
                return_res(conn,current_path)
            else:
                conn.send('该文件不是文件夹,请重新输入!')
                continue
        if dic['opt'] == '..':
            l = current_path.split('/')
            l.pop()
            current_path = '/'.join(l)
            return_res(conn,current_path+'/')
    
    conn.close()
    sk.close()
    
    
    客户端 
    
    import socket
    import json
    sk = socket.socket()
    
    sk.connect(('127.0.0.1',8080))
    
    dirs = input('请输入当前目录绝对路径>>>')
    sk.send(dirs.encode('utf-8'))
    print(sk.recv(1024).decode('utf-8').split('--'))
    
    dic = {'opt':None,'filename':None}
    
    while 1:
        cmd = input('请输入命令操作>>>')
        dic['opt'] = cmd
        if cmd == 'cd':
            dic['filename'] = input('请输入要查看的文件夹名>>>')
        dic_str = json.dumps(dic)
        sk.send(dic_str.encode('utf-8'))
        print(sk.recv(1024).decode('utf-8').split('--'))
    
    sk.close()
    

      

  • 相关阅读:
    hdu 1207 汉诺塔
    hdu 1995 汉诺塔
    hdu 2077 汉诺塔
    android service 学习
    Android apk下载 安装 卸载 打开
    Android之Broadcast, BroadcastReceiver(广播)
    Android底部菜单栏 仿微博效果
    Android 菜单(OptionMenu)大全 建立你自己的菜单
    伪静态
    从Table 表中取出第 m 条到第 n 条的记录
  • 原文地址:https://www.cnblogs.com/liuafan/p/9368062.html
Copyright © 2020-2023  润新知