我想通过适用于Android的Wi-Fi制作最快的文件共享应用,我想在传输时压缩数据以提高速度

时间:2019-05-05 19:25:45

标签: c#

我想在无线传输文件(Wi-Fi)时以小块(以Mb或Kb为单位)替换大数据(以Gb为单位),我想提高大文件的传输速度。

我试图用格雷代码替换数据,但是由于缺乏知识,我无法编写适当的c#代码。

 using System; 

class GFG { 

    static int binary_to_gray(int n, int i) 
    {  
        int a, b; 
        int result = 0; 
        if (n != 0)  
        { 

            a = n % 10;  

            n = n / 10; 

            b = n % 10;  

            if ((a & ~ b) == 1 || (~ a & b) == 1)  
            { 
                result = (int) (result + Math.Pow(10,i)); 
            } 

            return binary_to_gray(n, ++i) + result; 
        } 

        return 0; 
    }

    public static void Main() 
    { 
        int binary_number; 
        binary_number = 1011101; 

        Console.WriteLine(binary_to_gray(binary_number,0)); 
    }  
}

我在学校没有计算机科学专业,所以我尝试自己学习编程,这是我的爱好,我正在通过适用于Android的Wi-Fi开发文件共享应用。 我希望压缩数据,但是它保持不变或增加。

1 个答案:

答案 0 :(得分:1)

Gray code不是压缩算法。这是一种减少位数变化的算法。因此,它不会减小文件传输的大小。

在我看来,您似乎想要像LZ或LZW这样的lossless compression algorithm(从ZIP等压缩程序中知道)。