Android 类将不会写入我的SD卡

Android 类将不会写入我的SD卡,android,button,android-fragments,android-viewpager,Android,Button,Android Fragments,Android Viewpager,我不能写我的sd卡。事实上,“写入”按钮没有任何作用。我发起得对吗?我的代码错了吗?我的logcat也帮不上忙:/任何帮助都将不胜感激 我不确定这是否是因为我正在使用查看寻呼机?您是否向清单中添加了SD权限 package com.adamschardt.hauling; import android.app.Activity; import android.os.Bundle; import android.support.v4.app.Fragment; import android.su

我不能写我的sd卡。事实上,“写入”按钮没有任何作用。我发起得对吗?我的代码错了吗?我的logcat也帮不上忙:/任何帮助都将不胜感激


我不确定这是否是因为我正在使用查看寻呼机?

您是否向清单中添加了SD权限

package com.adamschardt.hauling;

import android.app.Activity;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentActivity;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentStatePagerAdapter;
import android.support.v4.view.PagerAdapter;
import android.support.v4.view.ViewPager;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

public class MainActivity extends FragmentActivity {

    private static final int NUM_PAGES = 5;

    private ViewPager mPager;
    private PagerAdapter mPagerAdapter;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        mPager = (ViewPager) findViewById(R.id.pager);
        mPagerAdapter = new MyFragmentStatePagerAdapter(getSupportFragmentManager());
        mPager.setAdapter(mPagerAdapter);
    }

    @Override
    public void onBackPressed() {
        if (mPager.getCurrentItem() == 0) {
            super.onBackPressed();
        } else {
            mPager.setCurrentItem(mPager.getCurrentItem() - 1);
        }
    }

    private class MyFragmentStatePagerAdapter extends FragmentStatePagerAdapter {
        public MyFragmentStatePagerAdapter(FragmentManager fm) {
            super(fm);
        }

        @Override
        public Fragment getItem(int position) {
         Fragment tmpFragment;
         if(position==4){
          tmpFragment = new SlidePageSupportFragment4();
         }else{
          tmpFragment = new SlidePageSupportFragment();
             ((SlidePageSupportFragment)tmpFragment).setPageNumber(position);
         }
            return tmpFragment;
        }

        @Override
        public int getCount() {
            return NUM_PAGES;
        }
    }

      EditText fcontent,fcontent2,fcontent3,fcontent4,fname;
      Button write;
      protected void onCreate2(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.slide_page);
        fname = (EditText)findViewById(R.id.fname);
        fcontent = (EditText)findViewById(R.id.edit);
        fcontent2 = (EditText)findViewById(R.id.edit2);
        fcontent3 = (EditText)findViewById(R.id.edit3);
        fcontent4 = (EditText)findViewById(R.id.edit4);
        write = (Button)findViewById(R.id.btnwrite);

            write.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View arg0) {
          // TODO Auto-generated method stub
        String filename = fname.getText().toString();
        String filecontent = fcontent.getText().toString();
        String filecontent2 = fcontent2.getText().toString();
        String filecontent3 = fcontent3.getText().toString();
        String filecontent4 = fcontent4.getText().toString();

        FileOperations fop = new FileOperations();
        fop.write(filename, filecontent, filecontent2, filecontent3, filecontent4, filecontent4);
        if(fop.write(filename, filecontent, filecontent2, filecontent3, filecontent4, filecontent4)){
        Toast.makeText(getApplicationContext(), filename+".txt created", Toast.LENGTH_SHORT).show();
        }else{
          Toast.makeText(getApplicationContext(), "I/O error", Toast.LENGTH_SHORT).show();
        }
        }
      });


      }
      }

我以前做过SD卡处理,这不是小事。从最基本的开始。一个好的Stackoverflow是[Get External SD Location][2]

[2] :

我的问题的一个例子是三星手机,SD位于“/storage/extSdCard/”。因此可能存在制造商的问题


祝你好运…

你的代码可能是正确的,但现在,你已经在AndroidManifest中设置了安全权限,只需谷歌一下:-)我认为你的Android文件I/O操作不适合SD卡。也许上传你的类文件操作。稍后我会发布一个我认为对你有帮助的答案。随时关注您的进度。如果您认为您的问题可能在SD或文件I/O中,请在您的问题中添加另一个(更合适的)标记,并将android片段作为问题删除。我已设置读写权限。通常,如果你忘记了这些,你的应用程序就会崩溃。我的按钮虽然设置好了,但没有任何作用。
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />