我想要得到一个我正在获得的字符串值。可以说我有一组客户。每个客户都设置在一封信中有多张纸。我有两个字符串变量:
sheetsPerCustomer和totalPagescustomer
目前它看起来像这样:
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getSupportMenuInflater().inflate(R.menu.activity_readinglist_activity,
menu);
MenuItem actionItem = menu.findItem(R.id.reading_share);
ShareActionProvider actionProvider = (ShareActionProvider) actionItem
.getActionProvider();
Intent intent = getDefaultShareIntent();
if (intent != null)
actionProvider.setShareIntent(intent);
return super.onCreateOptionsMenu(menu);
}
private Intent getDefaultShareIntent() {
Intent intent = new Intent(Intent.ACTION_SEND);
intent.setType("text/plain");
intent.putExtra(Intent.EXTRA_SUBJECT, titleR);
intent.putExtra(Intent.EXTRA_TEXT, handleR);
return intent;
}
我必须将totalPagescustomer视为总页数为3而不是6.它应该如下所示:
{{1}}
如果我将字符串转换为int进行除法,则直接除法不起作用,因为“0”将丢失。我需要保留左侧数字,因为总页数可以是10,20等,所以我需要两位数。有没有办法存档?
答案 0 :(得分:1)
为自己省去麻烦并使用整数。它使你的意图更加清晰。如果你试图使用类似'int'的东西,那么也许你应该使用int。
如果您需要显示2位数字,您可以执行以下操作:
std::cout << std::setfill('0') << std::setw(2) << sheetsPerCustomer << std::endl;
答案 1 :(得分:-1)
这是一种类似的方法:
#include <iostream>
using namespace std;
int main()
{
char buf[16];
int j = 7;
sprintf(buf, "%02d", j);
cout << "Result is " << buf << endl;
return 0;
}
这会打印Result is 07
。