انجمن سایت کلیدستان


رتبه موضوع:
  • 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
دسترسی به فایل text از طریق assets

دسترسی به فایل text از طریق assets

#1
سلام خدمت دوستان اندرویدی Blush
میخوام تو برنامم یه سری نوشته(text) داشته باشم ولی فایلش رو داخل پوشه ی assets بذارم و دیگه داخلstring.xml چیزی ننویسم. با استفاده از فایل html میشه این کارو کرد ولی تو اون حال نیاز به webView و اینترنت هستش که من اینو نمیخوام!!! میخوام تو اون صفحه یه textView باشه و اون متنا داخل textView نمایش داده شه! لطفا اگه کسی اطلاعی داره کمک کنه
خیلی ممنون
پاسخ

دسترسی به فایل text از طریق assets

#2
(۱۳۹۵/۰۲/۱۵, ۱۰:۴۵ ب.ظ)AliJCVD نوشته: سلام خدمت دوستان اندرویدی Blush
میخوام تو برنامم یه سری نوشته(text) داشته باشم ولی فایلش رو داخل پوشه ی assets بذارم و دیگه داخلstring.xml چیزی ننویسم. با استفاده از فایل html میشه این کارو کرد ولی تو اون حال نیاز به webView و اینترنت هستش که من اینو نمیخوام!!! میخوام تو اون صفحه یه textView باشه و اون متنا داخل textView نمایش داده شه! لطفا اگه کسی اطلاعی داره کمک کنه
خیلی ممنون

یکی کمک کنه لطفا!! یکم بیشتر توضیح میدم که راحت متوجه شه هرکی خوند!!
من چنتا فایل txt  با نوت پد ویندوز نوشتم و اوردم داخل پوشه assets برنامه کپی کردم. بعد دوتا صفحه ی xml دارم که تو یکیش چنتا دکمه دارم تو یکیشم یه textView  گذاشتم. حالا میخوام روی هر دکمه که کلیک شد برنامه بره متن مخصوص به هر دکمه رو داخل textView  نمایش بده! در واقع میخوام دیگه با این کار واسه هر دکمه یه صفحه ی جدا نسازم و دونه دونه رو هرکدوم کلیک شد پاس داده بشه به صفحه ای که توش یه textView دارم.

مشابه این روش رو دیدم که با فایل html  و webView انجام میدند و جواب میده ولی من میخوام جای html  و webView  از فایل txt  و کامپوننت TextView استفاده کنم. اینم کدایی که زدم ولی جواب نداده!! برنامه اررور میده!
کد:
public class MyActivity extends Activity {

  Button btn;
  @Override
  public void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.main);

      btn = (Button) findViewById(R.id.btn);

      btn.setOnClickListener(new View.OnClickListener() {
          @Override
          public void onClick(View view) {
              Intent intent = new Intent(MyActivity.this,tvactivty.class);
              intent.putExtra("text","file:///android_asset/1.txt");
              startActivity(intent);
          }
      });
  }
}
وبعدش تو اکتیویتی دیگه مربوط به xml ای که توش textView  دارم اومدم این کدارو زدم:
کد:
public class tvactivty extends Activity {

  TextView tv;

  @Override
  public void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.main);

      tv = (TextView) findViewById(R.id.tv);

      String text = getIntent().getStringExtra("text");
      tv.setText(text);
  }
}
پاسخ

دسترسی به فایل text از طریق assets

#3
میتونید از این تابع استفاده کنید

کد پی‌اچ‌پی:
BufferedReader reader null;
try {
 
   reader = new BufferedReader(
 
       new InputStreamReader(getAssets().open("filename.txt"), "UTF-8")); 

 
   // do reading, usually loop until end of file reading 
 
   String mLine;
 
   while ((mLine reader.readLine()) != null) {
 
      //process line
 
      ...
 
   }
} catch (
IOException e) {
 
   //log the exception
} finally {
 
   if (reader != null) {
 
        try {
 
            reader.close();
 
        } catch (IOException e) {
 
            //log the exception
 
        }
 
   }

پاسخ
 سپاس شده توسط شماره مجازی امارات ، تلگرام ضد فیلتر 2023


پرش به انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان