java怎么取得倒数第二个“”后面的

java怎么取得倒数第二个“”后面的,第1张

给你看一个小程序就懂了。

private static String getSubStr(String str, int num) {

String result = "";

int i = 0;

while(i < num) {

int lastFirst = strlastIndexOf('/');

result = strsubstring(lastFirst) + result;

str = strsubstring(0, lastFirst);

i++;

}

return resultsubstring(1);

} }

想去倒数第几个后面的字符串就把num设成几,str是原来的字符串,返回得到字符串

以下是本人工资管理系统的计算部分过程

请参考:

(有与excel接口等)

proce sdl00

xx=0

LOCAL oWMI AS OBJECT,oLocal AS OBJECT,oHARDWARE AS OBJECT,object1 AS OBJECT,lcCPUID

,LcMAC,lcHDID,lcSerial

oWMI=CREATEOBJECT("WbemScriptingSWbemLocator")

oLocal=oWMIConnectServer("", "root\cimv2")

oHARDWARE=oLocalExecQuery("SELECT FROM Win32_Processor")

FOR EACH object1 IN oHARDWARE

lcCPUID=object1Properties_('ProcessorId')VALUE

EXIT

ENDFOR

oHARDWARE=oLocalExecQuery("SELECT FROM Win32_PhysicalMedia")

FOR EACH object1 IN oHARDWARE

lcHDID=object1Properties_('SerialNumber')VALUE

EXIT

ENDFOR

oHARDWARE=oLocalExecQuery("SELECT FROM Win32_NetworkAdapterConfiguration Where IPEnabled=1")

FOR EACH object1 IN oHARDWARE

LcMAC=object1Properties_('MACAddress')VALUE

EXIT

ENDFOR

'CPU序号:',lcCPUID

'硬盘序号:',lcHDID

'网卡MAC地址:',LcMAC

for i=1 to len(lcCPUID)

xx=xx+asc(substr(lcCPUID,i,1))

endf

use \dbf\dwname

go top

x=asc(substr(c,4,1))10 + asc(substr(c,2,1))

if x=0 then

messagebox("您的申请码为:"+str(xx)+chr(13)+chr(13)+;

" 我的办公电话: (0411)12345678"+chr(13)+chr(13)+;

" 我的移动电话: 13123456789"+chr(13)+chr(13)+;

" 联系人 : 姜云丽",64,"运行次数已到!如果您对本软件满意,请与开发者联系购买")

quit

endif

if x<=30 and left(c,1)=chr(8) and substr(c,3,1)=chr(4) and substr(c,5,1)=chr(6) then

x=x-1

y=str(x,2)

replace c with chr(8)+chr(val(right(y,1)))+chr(4)+chr(val(left(y,1)))+chr(6)

copy to \shaotxt fields c sdf

messagebox(" 您的申请码为:"+str(xx)+chr(13)+chr(13)+;

" 我的办公电话: (0411)12345678"+chr(13)+chr(13)+;

" 我的移动电话: 13123456789"+chr(13)+chr(13)+;

" 联系人 : 姜云丽",64,"您还有"+y+"次机会!如果您对本软件满意,请与开发者联系购买")

else

if upper(alltrim(c))!=alltrim(str(xx2+1232,30)) then

messagebox(" 如果想购买此软件,请与此软件的开发者联系。"+chr(13)+chr(13)+;

" 您的申请码为:"+str(xx)+chr(13)+chr(13)+;

" 我的办公电话: (0411)12345678"+chr(13)+chr(13)+;

" 我的移动电话: 1312345678"+chr(13)+chr(13)+;

" 联系人 : 姜云丽",64,"请尊重他人的知识产权!")

quit

endif

endif

replace c with "不确切的"

use

return

PROCE FJGZ11

初始化模块

n=messagebox("初始化意味着将数据库原有数据全部清除,"+chr(13)+;

"如果您想清除的话,请键入Y,即刻初始化本"+chr(13)+;

"档案数据库;n〈或直接按回车〉,不清除,"+chr(13)+;

"而返回。",4+32+256,"是否初始化数据库?,想好了,您在决定!")

if n=7 && no

return

endif

n=messagebox("初始化意味着将数据库原有数据全部清除,"+chr(13)+;

"如果您想清除的话,请键入Y,即刻初始化本"+chr(13)+;

"档案数据库;n〈或直接按回车〉,不清除,"+chr(13)+;

"而返回。",4+32+256,"再次提醒您:是否初始化数据库?,想好了,您在决定!")

if n=7 && no

return

endif

copy file \dbf\FJgz1dbf to \dbfbak\FJgz1dbf

use \dbf\FJgz1

zap

use

RETURN

PROCE FJGZ12

部门分类数据的添加

use \dbf\FJgz1

delete all for a01=space(2) or a02=space(2) or a04

pack

if reccount()=0

append blank

replace a01 with "01",a02 with "01"

endif

use

return

PROCE FJGZ13

数据的显示

return

PROCE FJGZ14

数据的修改

return

PROCE FJGZ15

数据的删除

return

PROCE FJGZ16

数据库按一级二级排序

n=messagebox(" 数据库排序意味着将数据库原有数据全部"+chr(13)+;

"按一级二级排序,并且清除一级二级排序编号"+chr(13)+;

"为空或名称为空的数据,Y〈或着直接按回车〉"+chr(13)+;

"执行,N就返回。",32+4,"重要提示!")

if n=6 &&是

use \dbf\FJgz1

delete all for a01=space(2) or a02=space(2) or a03=space(12) or a04

pack

sort to \dbf\temp on a01,a02

use

copy file \dbf\tempdbf to \dbf\FJgz1dbf

endif

messagebox("数据库排序完毕,单击确定,返回。",0+48,"排序完毕!")

RETURN

PROCE FJGZ21

初始化模块

n=messagebox("初始化意味着将数据库原有数据全部清除,"+chr(13)+;

"如果您想清除的话,请键入Y,即刻初始化本"+chr(13)+;

"档案数据库;n〈或直接按回车〉,不清除,"+chr(13)+;

"而返回。",4+32+256,"是否初始化数据库?,想好了,您在决定!")

if n=7 && no

return

endif

n=messagebox("初始化意味着将数据库原有数据全部清除,"+chr(13)+;

"如果您想清除的话,请键入Y,即刻初始化本"+chr(13)+;

"档案数据库;n〈或直接按回车〉,不清除,"+chr(13)+;

"而返回。",4+32+256,"再次提醒您:是否初始化数据库?,想好了,您在决定!")

if n=7 && no

return

endif

copy file \dbf\FJGZ2dbf to \dbfbak\FJGZ2dbf

use \dbf\FJGZ2

zap

use

return

PROCE FJGZ22

如果FJgz2dbf的记录为零,则添加一个记录

use \dbf\FJgz2

if reccount()=0

append blank

replace a01 with "01",a02 with "01"

endif

use

return

PROCE FJGZ26

数据库按一级二级排序

n=messagebox(" 数据库排序意味着将数据库原有数据全部"+chr(13)+;

"按一、二级序号排序,并且清除一、二级排序"+chr(13)+;

"编号为空或名称为空的数据,Y(或着直接按回车)"+chr(13)+;

"执行,N就返回。",32+4,"重要提示!")

if n=6 &&是

use \dbf\FJGZ2

delete all for a01+a02=space(4) or b34

pack

sort to \dbf\temp on a01,a02,xh

use

copy file \dbf\tempdbf to \dbf\FJGZ2dbf

endif

messagebox("数据库排序完毕,单击确定,返回。",0+48,"排序完毕!")

RETURN

PROCE FJGZ27

全自动计算

use \dbf\gx

ab1=alltrim(gxsjgx1)

ab2=alltrim(gxsjgx2)

use

use \dbf\fjgz2

scan all

replace b14 with b1+b2+b3+b4+b5+b6+b7+b8+b9+b10+b11+b12-b13&&第一个小计,纳税部分

sj=&ab1 &&税基本式

replace b26 with &ab2

replace b20 with b15+b16+b17+b18+b19 &&第二个小计,不纳税部分

replace b21 with b14+b20

replace b27 with b22+b23+b24+b25+b26

replace b28 with b21-b27

endscan

use

messagebox("全自动计算完毕,单击确定,返回。",0+48,"全计算完毕!")

return

PROCE FJGZ28

人工修改税金后,并计算计算

use \dbf\fjgz2

scan all

replace b14 with b1+b2+b3+b4+b5+b6+b7+b8+b9+b10+b11+b12-b13&&第一个小计,纳税部分

replace b20 with b15+b16+b17+b18+b19 &&第二个小计,不纳税部分

replace b21 with b14+b20

replace b27 with b22+b23+b24+b25+b26

replace b28 with b21-b27

endscan

use

messagebox("计算完毕,单击确定,返回。",0+48,"计算完毕!")

return

proce fjgz211

清除奖金

n=messagebox("清除奖金意味着将在数据库原有奖金删除。 "+chr(13)+;

"键入Y(或着直接按回车)执行,N就返回。",32+4,"重要提示!")

if n=6 &&是

use \dbf\FJgz2

replace all b12 with 0 && b12-奖金

endif

messagebox("奖金清楚完毕,单击确定,返回。",0+48,"排序完毕!")

RETURN

proce FJGZ31

指定单位报表

create table \dbf\da20 ;

(a01 c (2),; && 一级码

a02 c (2),; && 二级码

xm c (8),; && 姓名

xh n (4),; && 序号

b1 n (6),; && 固定工资

b2 n (6),; && 薪级工资

b3 n (6),; && 绩效工资

b4 n (7,2),; &&

b5 n (6,2),; && 粮煤补贴

b6 n (6),; && 书报补贴

b7 n (6),; && 职务补贴

b8 n (7,2),; && 综合补贴

b9 n (7,2),; && 家属系数

b10 n (7,2),; && 住房补贴

b11 n (7,2),; && 其它

b12 n (6),; && 奖金

b13 n (7,2),; && 扣工资

b14 n (7,2),; && 小计

b15 n (6),; && 误餐费

b16 n (6),; && 卫生费

b17 n (6),; && 独子费

b18 n (6),; && 交通费

b19 n (7,2),; && 采暖费

b20 n (7,2),; && 小计

b21 n (7,2),; && 应付工资

b22 n (7,2),; && 房租

b23 n (7,2),; && 公积金

b24 n (7,2),; && 养老金

b25 n (7,2),; && 其它

b26 n (7,2),; && 税金

b27 n (7,2),; && 扣款计

b28 n (7,2),; && 实发工资

b35 c (19),; && 银行帐号

b40 n (4,2),; && 余额

b41 L (1))

use

use \dbf\dwname

xx=a1

use

正在作个人计算

use \dbf\FJGZ2

set filter to a01+a02=xx

replace b14 with b1+b2+b3+b4+b5+b6+b7+b8+b9+b10+b11+b12-b13&&第一个小计,纳税部分

replace b20 with b15+b16+b17+b18+b19 &&第二个小计,不纳税部分

replace b21 with b14+b20

replace b27 with b22+b23+b24+b25+b26

replace b28 with b21-b27

replace all b40 with b28-int(b28) for val(alltrim(b35))=0 and xxxx &&不在银行开资的,存余额

replace all b28 with int(b28) for val(alltrim(b35))=0 and xxxx &&取整,不在银行开资的

use

use \dbf\FJGZ2

copy to \dbf\temp1 for a01+a02=xx and b41

use

use \dbf\da20

zap

append from \dbf\temp1

count to x5

use

create table \dbf\da21 ;

(ab1 c (8),; &&主管领导

ab2 c (8),; &&审核人

ab3 c (8),; &&工资员

ab4 c (12),; &&部门名称

ab5 n (5); &&共人数

)

use

use \dbf\name

locate for n1="01"

x1=n2

locate for n1="02"

x2=n2

locate for n1="03"

x3=n2

use

use \dbf\FJGZ1

locate for a01+a02=xx

x4=a03

use

use \dbf\da21

zap

append blank

replace ab1 with x1,ab2 with x2,ab3 with x3,ab4 with x4,ab5 with x5

use

return

proce FJGZ34

个人计算(含汇总计算)

create table \dbf\da20;

(a01 c(2),; && 一级码

a02 c (2),; && 二级码

xm c (8),; && 姓名

b0 n (4),; && 人数

b1 n (6),; && 固定工资

b2 n (6),; && 薪级工资

b3 n (6),; && 绩效工资

b4 n (9,2),; &&

b5 n (6,2),; && 粮煤补贴

b6 n (6),; && 书报费

b7 n (6),; && 职务补贴

b8 n (9,2),; && 综合补贴

b9 n (9,2),; &&

b10 n (9,2),; && 住房补贴

b11 n (9,2),; && 其它

b12 n (6),; && 奖金

b13 n (9,2),; && 扣工资

b14 n (9,2),; && 小计

b15 n (6),; && 误餐费

b16 n (6),; && 卫生费

b17 n (6),; && 独子费

b18 n (6),; && 交通费

b19 n (9,2),; && 采暖费

b20 n (9,2),; && 小计

b21 n (9,2),; && 应付工资

b22 n (9,2),; && 房租

b23 n (9,2),; && 公积金

b24 n (9,2),; && 养老金

b25 n (9,2),; && 其它

b26 n (9,2),; && 税金

b27 n (9,2),; && 扣款计

b28 n (9,2),; && 实发工资

b40 n (4,2)) && 余额

use

正在作个人计算

use \dbf\FJGZ2

replace all b14 with b1+b2+b3+b4+b5+b6+b7+b8+b9+b10+b11+b12-b13

replace all b20 with b15+b16+b17+b18+b19

replace all b21 with b14+b20

replace all b27 with b22+b23+b24+b25+b26

replace all b28 with b21-b27

replace all b40 with b28-int(b28) for val(alltrim(b35))=0 and xxxx &&不在银行开资的,存余额

replace all b28 with int(b28) for val(alltrim(b35))=0 and xxxx &&取整,不在银行开资的

index on a01+a02 to \idx\a0102

total on a01+a02 to \dbf\temp1 for b41 &&本月开资的

use

use \dbf\da20

zap

append from \dbf\temp1

use

select 3

use \dbf\FJGZ2

select 1

use \dbf\da20

select 2

use \dbf\FJGZ1

index on a01+a02 to \idx\a0102

select 1

set relation to a01+a02 into FJGZ1

replace all xm with FJGZ1a03

go top

do while not eof()

xx=a01+a02

select 3

count all to x2 for a01+a02=xx &&该部门所有人员,开不开工资均算在内 加and b41仅仅算开工资的

select 1

replace b0 with x2 &&部门人数

skip

enddo

close database

dimension dimc(29)

dimc=0 &&具体值合计

xyz=0 &&人数合计

select 2

use \dbf\da20

copy stru to \DBF\TEMP

select 4

USE \DBF\TEMP

append from \dbf\fjgz1

go top &&tempdbf 4区

do while not eof()

do case

case val(A02)<90 OR val(A02)>99 && 90-99 为专用的号

cursor1=recno() &&当前记录

select 2 &&da20

locate for a01=tempa01 and a02=tempa02

select 4 &&temp

go cursor1

replace ;

b0 with da20b0, b1 with da20b1, b2 with da20b2, b3 with da20b3,;

b4 with da20b4, b5 with da20b5, b6 with da20b6, b7 with da20b7,;

b8 with da20b8, b9 with da20b9, b10 with da20b10,b11 with da20b11,;

b12 with da20b12,b13 with da20b13,b14 with da20b14,b15 with da20b15,;

b16 with da20b16,b17 with da20b17,b18 with da20b18,b19 with da20b19,;

b20 with da20b20,b21 with da20b21,b22 with da20b22,b23 with da20b23,;

b24 with da20b24,b25 with da20b25,b26 with da20b26,b27 with da20b27,;

b28 with da20b28, b40 with da20b40

case a02='99' &&本记录以上 a02<>99 的小计

dimc=0 &&具体值合计

xyz=0 &&人数合计

cursor1=recno() &&当前记录

skip -1

do while (not BOF()) and a02 != "99"

xyz=xyz+b0

for i=1 to 28

x=iif(i<10,"b"+str(i,1),"b"+str(i,2))

dimc(i)=dimc(i)+&x

endfor

dimc(29)=dimc(29)+b40 && 余额

skip -1

enddo

go cursor1

replace b0 with xyz

for i=1 to 28

x=iif(i<10,"dimc("+str(i,1)+")","dimc("+str(i,2)+")")

y=iif(i<10,"b"+str(i,1),"b"+str(i,2))

replace (y) with &x

endfor

replace b40 with dimc(29) && 余额

case a02='98' &&本记录以上所有 a02=99 的小计

dimc=0 &&具体值合计

xyz=0 &&人数合计

cursor1=recno() &&当前记录

skip -1

do while not BOF()

if a02='99' &&是小计

xyz=xyz+b0

for i=1 to 28

x=iif(i<10,"b"+str(i,1),"b"+str(i,2))

dimc(i)=dimc(i)+&x

endfor

dimc(29)=dimc(29)+b40 && 余额

endif

skip -1

enddo

go cursor1

replace b0 with xyz

for i=1 to 28

x=iif(i<10,"dimc("+str(i,1)+")","dimc("+str(i,2)+")")

y=iif(i<10,"b"+str(i,1),"b"+str(i,2))

replace (y) with &x

endfor

replace b40 with dimc(29) && 余额

case a02='96' &&以上两项的小计

dimc=0 &&具体值合计

xyz=0 &&人数合计

cursor1=recno() &&当前记录

skip -2

sum next 2 b1,b2,b3,b4,b5,b6,b7,b8,b9,b10,b11,b12,b13,b14,b15,b16,b17,b18,b19,b20,b21,b22,b23,;

b24,b25,b26,b27,b28,b40 to Array dimc

go cursor1

skip -2

sum next 2 b0 to xyz

go cursor1

replace b0 with xyz

for i=1 to 28

x=iif(i<10,"dimc("+str(i,1)+")","dimc("+str(i,2)+")")

y=iif(i<10,"b"+str(i,1),"b"+str(i,2))

replace (y) with &x

endfor

replace b40 with dimc(29)

endcase

select 4

skip

enddo

select 1

use \dbf\fjgz1

select 4

go top

do while not eof()

replace xm with fjgz1a03

select 1

skip

select 4

skip

enddo

close database

copy file \dbf\tempdbf to \dbf\da20dbf

以下计算在银行开资的

先算在\dbf\fjgz2的在银行开资的

use \dbf\fjgz2

sum all b1,b2,b3,b4,b5,b6,b7,b8,b9,b10,b11,b12,b13,b14,b15,b16,b17,b18,b19,b20,b21,b22,b23,;

b24,b25,b26,b27,b28,b40 to Array dimc for left(b35,1)<>" " and b41

count to xyz for left(b35,1)<>" " and b41

use

use \dbf\da20

append blank

for i=1 to 28

x=iif(i<10,"dimc("+str(i,1)+")","dimc("+str(i,2)+")")

y=iif(i<10,"b"+str(i,1),"b"+str(i,2))

replace (y) with &x

endfor

replace b40 with dimc(29),b0 with xyz

replace xm with "有帐号"

use

create table \dbf\da21 ;

(ab1 c (8),; &&主管领导

ab2 c (8),; &&审核人

ab3 c (8),; &&工资员

ab4 n (5); &&人数

)

use

use \dbf\name

locate for n1="01"

x1=n2

locate for n1="02"

x2=n2

locate for n1="03"

x3=n2

use

use \dbf\FJGZ2

count all to x6 &&人数小计

use

use \dbf\da21

zap

append blank

replace ab1 with x1,ab2 with x2,ab3 with x3,ab4 with x6

use

return

proce FJGZ41

余额送余额数据库

select 1

use \dbf\fjgz3

select 2

use \dbf\fjgz2

copy to \dbf\temp0 for val(alltrim(b35)) = 0 and b41 and xxxx

&&不在银行开资的,b35是银行帐号,b41是本月开资的

use

use \dbf\temp0

select 1

append from \dbf\temp0

index on a01+a02+xm to \idx\afjgz3

total on a01+a02+xm to \dbf\temp1

zap

append from \dbf\temp1

select 2

index on a01+a02+xm to \idx\afjgz2

select 1

set relation to a01+a02+xm into temp0

go top

replace all a03 with temp0xh &&序号

xyz=substr(dtos(date()),5,2)

xyz="y"+xyz

replace all (xyz) with temp0b28-int(temp0b28)

replace all yexj with y01+y02+y03+y04+y05+y06+y07+y08+y09+y10+y11+y12

use

select 2

use

return

proce fjgz49

打印全体余额数

use \dbf\fjgz3

SORT TO \dbf\temp1 ON a01,a02,a03

use

return

proce fjgz54

向建行银行报盘

Use \dbf\fjgz2

copy to \dbf\temp fields b50,b35,b28 for b41 and left(b35,1)<>" "

use

use \dbf\temp

sum b28 to xxx

use

use \dbf\abc

abcdbf的结构就是 b50 N80,b35 C19,B28 N132,CCC

zap

append from \dbf\temp

sort to \dbf\temp on b50

zap

append from \dbf\temp

x=""

y=""

scan all

do case

case b50<10

x=str(b50,1)

case b50>=10 andb50<100

x=str(b50,2)

case b50>=100 andb50<1000

x=str(b50,3)

othe

x=str(b50,4)

endcase

do case

case b28<10

y=str(b28,4,2)

case b28>=10 andb28<100

y=str(b28,5,2)

case b28>=100 andb28<1000

y=str(b28,6,2)

case b28>=1000 andb28<10000

y=str(b28,7,2)

othe

y=str(b28,8,2)

endcase

replace ccc with x+"|"+b35+"|"+y

endscan

n=messagebox(chr(13)+" 现拷贝职工号帐号及实发工资。"+chr(13)+chr(13)+;

" 请插入软(或U)盘后,单击是,即可拷贝报"+chr(13)+;

"银行的数据到C:\建行工资txt"+chr(13)+chr(13),4+32+128,"请注意提示:")

if n=6 && 是

copy to c:\建行工资txt fields ccc sdf

endif

USE

messagebox(chr(13)+"请将c:\建行工资txt备份到软(或U)盘,留做报银行用。"+chr(13)+;

"单击确定,返回本次报盘总额: "+str(xxx,11,2),"请注意提示:")

RETURN

proce fjgz55

向商业银行报盘

create table \dbf\da20 ;

(b35 c (19),; && 银行帐号

b33 c (9),; && 以分为单位的9位数,不足9位,前导为零

c03 c (9); && 9位零

)

use

use \dbf\fjgz2

copy to \dbf\temp1 for len(alltrim(b35)) != 0 and b41

use

use \dbf\da20

append from \dbf\temp1

replace all b33 with ;

replicate("0",9-len(alltrim(str(val(alltrim(b33))100,9))))+;

alltrim(str(val(alltrim(b33))100,9))

replace all c03 with "000000000"

use

n=messagebox(chr(13)+" 现将软盘的原有数据全部清除,并拷贝"+chr(13)+;

"帐号及实发工资"+chr(13)+;

" 请插入一张软盘后,单击是,即可拷贝报"+chr(13)+;

"银行的数据"+chr(13)+chr(13),4+32+128)

if n=6 && 是

erase a:\

use \dbf\da20

copy to a:\b001txt sdf

use

messagebox(chr(13)+"请从软驱中取走A盘,留做报银行用。"+chr(13)+;

"单击确定,返回")

endif

use \dbf\fjgz2

copy to c:\123456xls fields xm,b35,b28 xls

use

messagebox("生成完毕!,放在c:\123456xls",4+32+128)

return

proce fjgz56

向工商银行报盘

create table \dbf\da20 ;

(b35 c (19),; && 银行帐号

b28 c (9),; && 以分为单位的9位数,不足9位,前导为零

c03 c (9); && 9位零

)

use

use \dbf\fjgz2

copy to \dbf\temp1 for len(alltrim(b35)) != 0 and b41

use

use \dbf\da20

append from \dbf\temp1

replace all b28 with ;

replicate("0",9-len(alltrim(str(val(alltrim(b28))100,9))))+;

alltrim(str(val(alltrim(b28))100,9))

replace all c03 with "000000000"

use

n=messagebox(chr(13)+" 现拷贝帐号及实发工资"+chr(13)+;

" 请插入软(或U)盘后,单击是,即可拷贝报"+chr(13)+;

"银行的数据到C:\b001txt"+chr(13)+chr(13),4+32+128)

if n=6 && 是

use \dbf\da20

copy to C:\b001txt sdf

use

messagebox(chr(13)+"请将c:\b001txt备份到软(或U)盘,留做报工行银行用。"+chr(13)+;

"单击确定,返回")

endif

return

proce fjgz57

统计在银行开资的数量

create table \dbf\da20 ;

(a01 c(2),; && 一级码

a02 c (2),; && 二级码

xm c (8),; && 姓名

b0 n (4),; && 人数

b1 n (6),; && 固定工资

b2 n (6),; && 薪级工资

b3 n (6),; && 绩效工资

b4 n (9,2),; &&

b5 n (6,2),; && 粮煤补贴

b6 n (6),; && 书报费

b7 n (6),; && 职务补贴

b8 n (9,2),; && 综合补贴

b9 n (9,2),; && 家属系数

b10 n (9,2),; && 住房补贴

b11 n (9,2),; && 其它

b12 n (6),; && 奖金

b13 n (9,2),; && 扣工资

b14 n (9,2),; && 小计

b15 n (6),; && 误餐费

b16 n (6),; && 卫生费

b17 n (6),; && 独子费

b18 n (6),; && 交通费

b19 n (9,2),; && 采暖费

b20 n (9,2),; && 小计

b21 n (9,2),; && 应付工资

b22 n (9,2),; && 房租

b23 n (9,2),; && 公积金

b24 n (9,2),; && 养老金

b25 n (9,2),; && 其它

b26 n (9,2),; && 税金

b27 n (9,2),; && 扣款计

b28 n (9,2),; && 实发工资

b35 c (19); && 银行帐号

)

use

正在作个人计算

use \dbf\FJGZ2

replace all b14 with b1+b2+b3+b4+b5+b6+b7+b8+b9+b10+b11+b12-b13

replace all b20 with b15+b16+b17+b18+b19

public static void main(String[] args) throws Exception {

int n = 1;

String x = "aaaa";

if(n>=0 && n<=xlength()){

Systemoutprintln( xsubstring(0,xlength()-n) );

}

}

将n的值 模拟用户输入的值即可。

以上就是关于java怎么取得倒数第二个“/”后面的全部的内容,包括:java怎么取得倒数第二个“/”后面的、跪求VF设计程序 在线等、一个java小程序的问题等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/9567226.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-29
下一篇2023-04-29

发表评论

登录后才能评论

评论列表(0条)

    保存