从文件中读取,通过数组并打印到文件中

时间:2016-01-13 21:06:34

标签: c arrays file

我正在尝试创建一个程序来翻译文件中的单词并将它们放在另一个文件中。在这里,我正在尝试阅读这些单词并将它们放入一个数组中,以便我可以稍后搜索它们,然后将翻译后的单词打印回另一个文件。

目前我正在尝试从阵列中读取和打印:

public static class TestFragment extends Fragment {

        @Override
        public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
            View view = inflater.inflate(R.layout.fragment_test,container,false);
            return view;
        }
    }

文件中的文字是这样的:

 #include<stdio.h>
 #include <string.h>

int main()
{
    char rom_eng[4][2], fran_eng[4][2];
    int i, j;
    FILE* re = fopen("rom_eng.txt", "r");
    FILE* out = fopen("out.txt", "w");
    if (re == NULL)
    {
        printf("Error");
        return 1;
    }
    for (i = 0; i < 2; i++)
    {
         for (j = 0; j < 4; j++)
             fscanf(re, "%s", &rom_eng);

    }

    for (i = 0; i < 2; i++)
    {
        for (j = 0; j < 4; j++)
            fprintf(out, "%s \n", rom_eng);
    }
    return 0;
}

输出与输出文件中重复打印的最后一个字相同。

1 个答案:

答案 0 :(得分:1)

您定义:char rom_eng[4][2], fran_eng[4][2]; 然后你看了:fscanf(re, "%s", &rom_eng);

你不应该把'&'放在rom_eng之前,因为它被定义为char,而chars已经指向地址,所以在这种情况下你不需要把&#39;&amp;&#39;指向地址。